Repository navigation
Feat: pwsh 7.6 - #944
Draft
Zacgoose wants to merge 2 commits into
Draft
Feat: pwsh 7.6#944Zacgoose wants to merge 2 commits into
Zacgoose wants to merge 2 commits into
Conversation
- CIPPRestClient Send/SendConcurrent take the caller's cancellation token - callers pass $PSCmdlet.PipelineStopToken (PS 7.6; null on 7.4) - report export downloads dispose their HttpClient on stop
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces improved cancellation support for HTTP requests and concurrent operations throughout the codebase, ensuring that long-running or stalled operations can be reliably aborted when required (such as when a pipeline is stopped). It also updates Docker build images to use the latest .NET 10.0 SDK. The most important changes are grouped below:
Enhanced Cancellation Support
CIPPRestClientmethods (Send,SendAsync,SendConcurrent,SendConcurrentAsync, and internal helpers) to accept and propagate aCancellationToken, allowing external cancellation of HTTP requests and concurrent operations. This ensures that requests can be stopped cleanly and promptly when requested by the caller. [1] [2] [3] [4] [5] [6] [7] [8] [9]CIPPRestClientmethods to pass the pipeline's cancellation token ($PSCmdlet.PipelineStopToken). This ensures that user-initiated or pipeline-triggered cancellations are respected at every level. [1] [2] [3] [4] [5] [6]Testing
CIPPRestClient.Cancellation.Tests.ps1to verify that cancellation tokens correctly abort HTTP requests and concurrent operations, and that timeouts are still handled as expected.Build Environment Updates
dotnet/sdk:10.0-noble) instead of 8.0, ensuring compatibility with the latest .NET features and improvements. [1] [2] [3] [4]