-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Adding cancellationToken to all calls to ReadAsStringAsync() and ReadAsStreamAsync() #5187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding cancellationToken to all calls to ReadAsStringAsync() and ReadAsStreamAsync() #5187
Conversation
@lahma can you review this PR, it is pretty simple. Not sure what the issue is with the windows check failing, I don't think it has anything to do with my changes, and I'm reluctant to apply the fix suggested by CoPilot: Update MSBuild to Match the SDK Version Ensure that the MSBuild version used in the workflow supports .NET 9.0.204. You may need to install or update the Visual Studio Build Tools to align with this SDK. |
Do you see any possible SDK targets that would not have an overload that takes cancellation token? |
@lahma I don't think that's the issue with the check. Both Dotnet 8 and 9 support the cancellation token parameter on both the ReadAsStringAsync and ReadAsStreamAsync methods. And if SDK incompatibility were the issue, all 3 checks would have failed. Only the windows-latest check failed, while ubuntu-latest and macos-latest both passed. Here's the error from the windows-latest check failure: C:\Program Files\dotnet\sdk\9.0.300\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.targets(262,5): error NETSDK1216: Package Microsoft.Net.Sdk.Compilers.Toolset is not downloaded but it is needed because your MSBuild and SDK versions are mismatched. Ensure version 9.0.300 of the package is available in your NuGet source feeds and then run NuGet package restore from Visual Studio or MSBuild. [D:\a\NSwag\NSwag\src\NSwag.Annotations\NSwag.Annotations.csproj::TargetFramework=netstandard2.0] |
I was more worried about possible full framework usage, like net472. |
@lahma What if I have the templates emit preprocessor directives that will support all .NET versions? Ex: #if NETCOREAPP3_0_OR_GREATER || NET5_0_OR_GREATER |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for checking and improving. Looks good to me.
@lahma Wait, I hadn't added the preprocessor directives, I was only asking if that was a valid solution to the problem you raised... The branch as is will not work on .NET Framework or .NET Standard, can we "unmerge" until I add those changes? |
Can you send a second PR to add them? We can do incrementally. |
It's the windows build image GitHub Actions is using, needs some tweaking, unrelated to this. |
…AsStreamAsync() (RicoSuter#5187) Co-authored-by: Andrew Sharpe <[email protected]>
Updated [NSwag.Core](https://github.com/RicoSuter/NSwag) from 14.4.0 to 14.5.0. <details> <summary>Release notes</summary> _Sourced from [NSwag.Core's releases](https://github.com/RicoSuter/NSwag/releases)._ ## 14.5.0 ## What's Changed * Better support for reading yaml from a stream by @simonthum in RicoSuter/NSwag#5170 * #4821 Cleanup packages to use those provided by framework by @thompson-tomo in RicoSuter/NSwag#4831 * Set GH actions target .NET SDK to 9.0.204 by @lahma in RicoSuter/NSwag#5172 * Better support for reading yaml from a stream (part two) by @simonthum in RicoSuter/NSwag#5171 * Avoid multiple enumeration of array typed path parameters by @Khyalis in RicoSuter/NSwag#5149 * Restores all disabled compiler warnings. 649 and 8765 were missing. by @carlbjorknas in RicoSuter/NSwag#4962 * Fix to explode array parameters implicitly when SchemaType is OpenAPI 3.0 by @Phoosha in RicoSuter/NSwag#5176 * Adding cancellationToken to all calls to ReadAsStringAsync() and ReadAsStreamAsync() by @arshrp in RicoSuter/NSwag#5187 * Remove requirement for specific NET SDK in GH Actions by @lahma in RicoSuter/NSwag#5188 * Adjusted cancellationToken to work for all NSwag supported frameworks by @arshrp in RicoSuter/NSwag#5190 * Allow setting of the client interface access modifier based on the model access modifier by @pbolduc in RicoSuter/NSwag#4820 * Prioritize wildcard over json over first entry for accept content-type by @mdi1984 in RicoSuter/NSwag#5198 * Reduce interface dispatch to improve performance by @lahma in RicoSuter/NSwag#5199 * Surface ExtensionData in CSharpControllerTemplateModel by @hirudan in RicoSuter/NSwag#5204 * Expose the UseRequiredKeyword on CSharpClientGeneratorSettings for CSharp client generator by @r-englund in RicoSuter/NSwag#5205 * Fix to expose an optional param for AbortSignal (for axios) / CancelToken (for fetch) when GenerateClientInterfaces = true by @tomvdk in RicoSuter/NSwag#5202 * Sort client operation responses by status code by @lahma in RicoSuter/NSwag#5206 * TSC UpdateUseDtoClassAndDataConversionCodeProperties cleanup by @lahma in RicoSuter/NSwag#5212 * Update Microsoft.AspNetCore.* references to target 2.3.0 by @lahma in RicoSuter/NSwag#5214 * Convert to using Central Package Management by @lahma in RicoSuter/NSwag#5217 * Convert NSwagStudio setup to use WiX 6 by @lahma in RicoSuter/NSwag#5218 * Add support for TypeScript compilation testing by @lahma in RicoSuter/NSwag#5219 * Replace TypeScript string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5220 * Replace C# string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5221 * Remove deprecated tslint suppression by @CaringDev in RicoSuter/NSwag#5020 * Fix empty enumerable parameter handling in C# client by @lahma in RicoSuter/NSwag#5222 * Fix: C# Code Generation generates method with return default(void) by @nzeemin in RicoSuter/NSwag#4826 * Optimize DefaultParameterNameGenerator and add some more char cleanup by @lahma in RicoSuter/NSwag#5223 * Convert more tests to use verify by @lahma in RicoSuter/NSwag#5224 * Convert to xUnit v3 by @lahma in RicoSuter/NSwag#5225 * Ensure operation names start with alphanumeric character by @lahma in RicoSuter/NSwag#5227 * Change GenerateSampleSpecificationTests to auto verify mode by @lahma in RicoSuter/NSwag#5228 * Show DisplayName for conflicting actions by @Saibamen in RicoSuter/NSwag#5057 * Fix: When generated TS class name is "Error", it is conflicting with TS Error class by @doruk-info in RicoSuter/NSwag#5032 * Update NJsonSchema to 11.4.0, update testsuite to reflect a change in class name generation by @WolfgangHG in RicoSuter/NSwag#5177 * Improve nswag.js parameter handling by @KaterSchnurz in RicoSuter/NSwag#5232 * Use TypeScript 4.3 as default testing version by @lahma in RicoSuter/NSwag#5234 * v14.5.0 by @RicoSuter in RicoSuter/NSwag#5236 ## New Contributors * @simonthum made their first contribution in RicoSuter/NSwag#5170 * @thompson-tomo made their first contribution in RicoSuter/NSwag#4831 * @Khyalis made their first contribution in RicoSuter/NSwag#5149 * @carlbjorknas made their first contribution in RicoSuter/NSwag#4962 * @Phoosha made their first contribution in RicoSuter/NSwag#5176 * @arshrp made their first contribution in RicoSuter/NSwag#5187 * @pbolduc made their first contribution in RicoSuter/NSwag#4820 ... (truncated) Commits viewable in [compare view](RicoSuter/NSwag@v14.4.0...v14.5.0). </details> Updated [NSwag.Core.Yaml](https://github.com/RicoSuter/NSwag) from 14.4.0 to 14.5.0. <details> <summary>Release notes</summary> _Sourced from [NSwag.Core.Yaml's releases](https://github.com/RicoSuter/NSwag/releases)._ ## 14.5.0 ## What's Changed * Better support for reading yaml from a stream by @simonthum in RicoSuter/NSwag#5170 * #4821 Cleanup packages to use those provided by framework by @thompson-tomo in RicoSuter/NSwag#4831 * Set GH actions target .NET SDK to 9.0.204 by @lahma in RicoSuter/NSwag#5172 * Better support for reading yaml from a stream (part two) by @simonthum in RicoSuter/NSwag#5171 * Avoid multiple enumeration of array typed path parameters by @Khyalis in RicoSuter/NSwag#5149 * Restores all disabled compiler warnings. 649 and 8765 were missing. by @carlbjorknas in RicoSuter/NSwag#4962 * Fix to explode array parameters implicitly when SchemaType is OpenAPI 3.0 by @Phoosha in RicoSuter/NSwag#5176 * Adding cancellationToken to all calls to ReadAsStringAsync() and ReadAsStreamAsync() by @arshrp in RicoSuter/NSwag#5187 * Remove requirement for specific NET SDK in GH Actions by @lahma in RicoSuter/NSwag#5188 * Adjusted cancellationToken to work for all NSwag supported frameworks by @arshrp in RicoSuter/NSwag#5190 * Allow setting of the client interface access modifier based on the model access modifier by @pbolduc in RicoSuter/NSwag#4820 * Prioritize wildcard over json over first entry for accept content-type by @mdi1984 in RicoSuter/NSwag#5198 * Reduce interface dispatch to improve performance by @lahma in RicoSuter/NSwag#5199 * Surface ExtensionData in CSharpControllerTemplateModel by @hirudan in RicoSuter/NSwag#5204 * Expose the UseRequiredKeyword on CSharpClientGeneratorSettings for CSharp client generator by @r-englund in RicoSuter/NSwag#5205 * Fix to expose an optional param for AbortSignal (for axios) / CancelToken (for fetch) when GenerateClientInterfaces = true by @tomvdk in RicoSuter/NSwag#5202 * Sort client operation responses by status code by @lahma in RicoSuter/NSwag#5206 * TSC UpdateUseDtoClassAndDataConversionCodeProperties cleanup by @lahma in RicoSuter/NSwag#5212 * Update Microsoft.AspNetCore.* references to target 2.3.0 by @lahma in RicoSuter/NSwag#5214 * Convert to using Central Package Management by @lahma in RicoSuter/NSwag#5217 * Convert NSwagStudio setup to use WiX 6 by @lahma in RicoSuter/NSwag#5218 * Add support for TypeScript compilation testing by @lahma in RicoSuter/NSwag#5219 * Replace TypeScript string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5220 * Replace C# string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5221 * Remove deprecated tslint suppression by @CaringDev in RicoSuter/NSwag#5020 * Fix empty enumerable parameter handling in C# client by @lahma in RicoSuter/NSwag#5222 * Fix: C# Code Generation generates method with return default(void) by @nzeemin in RicoSuter/NSwag#4826 * Optimize DefaultParameterNameGenerator and add some more char cleanup by @lahma in RicoSuter/NSwag#5223 * Convert more tests to use verify by @lahma in RicoSuter/NSwag#5224 * Convert to xUnit v3 by @lahma in RicoSuter/NSwag#5225 * Ensure operation names start with alphanumeric character by @lahma in RicoSuter/NSwag#5227 * Change GenerateSampleSpecificationTests to auto verify mode by @lahma in RicoSuter/NSwag#5228 * Show DisplayName for conflicting actions by @Saibamen in RicoSuter/NSwag#5057 * Fix: When generated TS class name is "Error", it is conflicting with TS Error class by @doruk-info in RicoSuter/NSwag#5032 * Update NJsonSchema to 11.4.0, update testsuite to reflect a change in class name generation by @WolfgangHG in RicoSuter/NSwag#5177 * Improve nswag.js parameter handling by @KaterSchnurz in RicoSuter/NSwag#5232 * Use TypeScript 4.3 as default testing version by @lahma in RicoSuter/NSwag#5234 * v14.5.0 by @RicoSuter in RicoSuter/NSwag#5236 ## New Contributors * @simonthum made their first contribution in RicoSuter/NSwag#5170 * @thompson-tomo made their first contribution in RicoSuter/NSwag#4831 * @Khyalis made their first contribution in RicoSuter/NSwag#5149 * @carlbjorknas made their first contribution in RicoSuter/NSwag#4962 * @Phoosha made their first contribution in RicoSuter/NSwag#5176 * @arshrp made their first contribution in RicoSuter/NSwag#5187 * @pbolduc made their first contribution in RicoSuter/NSwag#4820 ... (truncated) Commits viewable in [compare view](RicoSuter/NSwag@v14.4.0...v14.5.0). </details> Updated [NSwag.Generation.AspNetCore](https://github.com/RicoSuter/NSwag) from 14.4.0 to 14.5.0. <details> <summary>Release notes</summary> _Sourced from [NSwag.Generation.AspNetCore's releases](https://github.com/RicoSuter/NSwag/releases)._ ## 14.5.0 ## What's Changed * Better support for reading yaml from a stream by @simonthum in RicoSuter/NSwag#5170 * #4821 Cleanup packages to use those provided by framework by @thompson-tomo in RicoSuter/NSwag#4831 * Set GH actions target .NET SDK to 9.0.204 by @lahma in RicoSuter/NSwag#5172 * Better support for reading yaml from a stream (part two) by @simonthum in RicoSuter/NSwag#5171 * Avoid multiple enumeration of array typed path parameters by @Khyalis in RicoSuter/NSwag#5149 * Restores all disabled compiler warnings. 649 and 8765 were missing. by @carlbjorknas in RicoSuter/NSwag#4962 * Fix to explode array parameters implicitly when SchemaType is OpenAPI 3.0 by @Phoosha in RicoSuter/NSwag#5176 * Adding cancellationToken to all calls to ReadAsStringAsync() and ReadAsStreamAsync() by @arshrp in RicoSuter/NSwag#5187 * Remove requirement for specific NET SDK in GH Actions by @lahma in RicoSuter/NSwag#5188 * Adjusted cancellationToken to work for all NSwag supported frameworks by @arshrp in RicoSuter/NSwag#5190 * Allow setting of the client interface access modifier based on the model access modifier by @pbolduc in RicoSuter/NSwag#4820 * Prioritize wildcard over json over first entry for accept content-type by @mdi1984 in RicoSuter/NSwag#5198 * Reduce interface dispatch to improve performance by @lahma in RicoSuter/NSwag#5199 * Surface ExtensionData in CSharpControllerTemplateModel by @hirudan in RicoSuter/NSwag#5204 * Expose the UseRequiredKeyword on CSharpClientGeneratorSettings for CSharp client generator by @r-englund in RicoSuter/NSwag#5205 * Fix to expose an optional param for AbortSignal (for axios) / CancelToken (for fetch) when GenerateClientInterfaces = true by @tomvdk in RicoSuter/NSwag#5202 * Sort client operation responses by status code by @lahma in RicoSuter/NSwag#5206 * TSC UpdateUseDtoClassAndDataConversionCodeProperties cleanup by @lahma in RicoSuter/NSwag#5212 * Update Microsoft.AspNetCore.* references to target 2.3.0 by @lahma in RicoSuter/NSwag#5214 * Convert to using Central Package Management by @lahma in RicoSuter/NSwag#5217 * Convert NSwagStudio setup to use WiX 6 by @lahma in RicoSuter/NSwag#5218 * Add support for TypeScript compilation testing by @lahma in RicoSuter/NSwag#5219 * Replace TypeScript string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5220 * Replace C# string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5221 * Remove deprecated tslint suppression by @CaringDev in RicoSuter/NSwag#5020 * Fix empty enumerable parameter handling in C# client by @lahma in RicoSuter/NSwag#5222 * Fix: C# Code Generation generates method with return default(void) by @nzeemin in RicoSuter/NSwag#4826 * Optimize DefaultParameterNameGenerator and add some more char cleanup by @lahma in RicoSuter/NSwag#5223 * Convert more tests to use verify by @lahma in RicoSuter/NSwag#5224 * Convert to xUnit v3 by @lahma in RicoSuter/NSwag#5225 * Ensure operation names start with alphanumeric character by @lahma in RicoSuter/NSwag#5227 * Change GenerateSampleSpecificationTests to auto verify mode by @lahma in RicoSuter/NSwag#5228 * Show DisplayName for conflicting actions by @Saibamen in RicoSuter/NSwag#5057 * Fix: When generated TS class name is "Error", it is conflicting with TS Error class by @doruk-info in RicoSuter/NSwag#5032 * Update NJsonSchema to 11.4.0, update testsuite to reflect a change in class name generation by @WolfgangHG in RicoSuter/NSwag#5177 * Improve nswag.js parameter handling by @KaterSchnurz in RicoSuter/NSwag#5232 * Use TypeScript 4.3 as default testing version by @lahma in RicoSuter/NSwag#5234 * v14.5.0 by @RicoSuter in RicoSuter/NSwag#5236 ## New Contributors * @simonthum made their first contribution in RicoSuter/NSwag#5170 * @thompson-tomo made their first contribution in RicoSuter/NSwag#4831 * @Khyalis made their first contribution in RicoSuter/NSwag#5149 * @carlbjorknas made their first contribution in RicoSuter/NSwag#4962 * @Phoosha made their first contribution in RicoSuter/NSwag#5176 * @arshrp made their first contribution in RicoSuter/NSwag#5187 * @pbolduc made their first contribution in RicoSuter/NSwag#4820 ... (truncated) Commits viewable in [compare view](RicoSuter/NSwag@v14.4.0...v14.5.0). </details> Updated [NSwag.MSBuild](https://github.com/RicoSuter/NSwag) from 14.4.0 to 14.5.0. <details> <summary>Release notes</summary> _Sourced from [NSwag.MSBuild's releases](https://github.com/RicoSuter/NSwag/releases)._ ## 14.5.0 ## What's Changed * Better support for reading yaml from a stream by @simonthum in RicoSuter/NSwag#5170 * #4821 Cleanup packages to use those provided by framework by @thompson-tomo in RicoSuter/NSwag#4831 * Set GH actions target .NET SDK to 9.0.204 by @lahma in RicoSuter/NSwag#5172 * Better support for reading yaml from a stream (part two) by @simonthum in RicoSuter/NSwag#5171 * Avoid multiple enumeration of array typed path parameters by @Khyalis in RicoSuter/NSwag#5149 * Restores all disabled compiler warnings. 649 and 8765 were missing. by @carlbjorknas in RicoSuter/NSwag#4962 * Fix to explode array parameters implicitly when SchemaType is OpenAPI 3.0 by @Phoosha in RicoSuter/NSwag#5176 * Adding cancellationToken to all calls to ReadAsStringAsync() and ReadAsStreamAsync() by @arshrp in RicoSuter/NSwag#5187 * Remove requirement for specific NET SDK in GH Actions by @lahma in RicoSuter/NSwag#5188 * Adjusted cancellationToken to work for all NSwag supported frameworks by @arshrp in RicoSuter/NSwag#5190 * Allow setting of the client interface access modifier based on the model access modifier by @pbolduc in RicoSuter/NSwag#4820 * Prioritize wildcard over json over first entry for accept content-type by @mdi1984 in RicoSuter/NSwag#5198 * Reduce interface dispatch to improve performance by @lahma in RicoSuter/NSwag#5199 * Surface ExtensionData in CSharpControllerTemplateModel by @hirudan in RicoSuter/NSwag#5204 * Expose the UseRequiredKeyword on CSharpClientGeneratorSettings for CSharp client generator by @r-englund in RicoSuter/NSwag#5205 * Fix to expose an optional param for AbortSignal (for axios) / CancelToken (for fetch) when GenerateClientInterfaces = true by @tomvdk in RicoSuter/NSwag#5202 * Sort client operation responses by status code by @lahma in RicoSuter/NSwag#5206 * TSC UpdateUseDtoClassAndDataConversionCodeProperties cleanup by @lahma in RicoSuter/NSwag#5212 * Update Microsoft.AspNetCore.* references to target 2.3.0 by @lahma in RicoSuter/NSwag#5214 * Convert to using Central Package Management by @lahma in RicoSuter/NSwag#5217 * Convert NSwagStudio setup to use WiX 6 by @lahma in RicoSuter/NSwag#5218 * Add support for TypeScript compilation testing by @lahma in RicoSuter/NSwag#5219 * Replace TypeScript string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5220 * Replace C# string contain asserts with Verify tests by @lahma in RicoSuter/NSwag#5221 * Remove deprecated tslint suppression by @CaringDev in RicoSuter/NSwag#5020 * Fix empty enumerable parameter handling in C# client by @lahma in RicoSuter/NSwag#5222 * Fix: C# Code Generation generates method with return default(void) by @nzeemin in RicoSuter/NSwag#4826 * Optimize DefaultParameterNameGenerator and add some more char cleanup by @lahma in RicoSuter/NSwag#5223 * Convert more tests to use verify by @lahma in RicoSuter/NSwag#5224 * Convert to xUnit v3 by @lahma in RicoSuter/NSwag#5225 * Ensure operation names start with alphanumeric character by @lahma in RicoSuter/NSwag#5227 * Change GenerateSampleSpecificationTests to auto verify mode by @lahma in RicoSuter/NSwag#5228 * Show DisplayName for conflicting actions by @Saibamen in RicoSuter/NSwag#5057 * Fix: When generated TS class name is "Error", it is conflicting with TS Error class by @doruk-info in RicoSuter/NSwag#5032 * Update NJsonSchema to 11.4.0, update testsuite to reflect a change in class name generation by @WolfgangHG in RicoSuter/NSwag#5177 * Improve nswag.js parameter handling by @KaterSchnurz in RicoSuter/NSwag#5232 * Use TypeScript 4.3 as default testing version by @lahma in RicoSuter/NSwag#5234 * v14.5.0 by @RicoSuter in RicoSuter/NSwag#5236 ## New Contributors * @simonthum made their first contribution in RicoSuter/NSwag#5170 * @thompson-tomo made their first contribution in RicoSuter/NSwag#4831 * @Khyalis made their first contribution in RicoSuter/NSwag#5149 * @carlbjorknas made their first contribution in RicoSuter/NSwag#4962 * @Phoosha made their first contribution in RicoSuter/NSwag#5176 * @arshrp made their first contribution in RicoSuter/NSwag#5187 * @pbolduc made their first contribution in RicoSuter/NSwag#4820 ... (truncated) Commits viewable in [compare view](RicoSuter/NSwag@v14.4.0...v14.5.0). </details> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Adding cancellationToken to all calls to ReadAsStringAsync() and ReadAsStreamAsync()
As per #5186