Update from Library.Template - #1633
Conversation
… (546) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Migrate coverage uploads to the supported Codecov CLI, verify its signed download, and propagate uploader failures to CI. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Fix Codecov CLI publishing
Adds a -NoCoverage switch to dotnet-test-cloud.ps1 for both the MTP and VSTest code paths. Code coverage instrumentation can destabilize a test run, and when it does there is currently no way for a repo to keep running tests on the affected leg without hand-editing this script. Also collect a crash report alongside the crash dump, and restrict the dump to the heap. On Linux the native crash report is often the only way to identify the faulting thread and instruction when a test host dies of an access violation, and a heap dump is considerably smaller than the default full dump while still containing everything needed to analyze managed state. Finally, stop discarding crash dumps that have no TRX attachment copy. The previous filter kept a .dmp only when it appeared under a TRX 'In' directory, so on GitHub Actions -- which does not request a TRX report -- every crash dump was dropped from the uploaded artifacts, making test host crashes impossible to diagnose. The dumps are now de-duplicated by file name instead, which still avoids uploading the same dump twice on Azure Pipelines. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Add -NoCoverage switch and improve crash diagnostics
Merges Library.Template commit 2d53806. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
|
One or more custom setup steps configured for this repository failed during this Copilot code review run: Setup steps run before each review. If the review above is missing context, or no review was posted at all, the failing step above may be the cause. See the workflow run for failure details, fix your setup steps configuration, and re-request a review. Note You can configure setup steps for Copilot code review separately from Copilot cloud agent with a |
There was a problem hiding this comment.
Pull request overview
Updates repository tooling to align with the latest Library.Template changes, including moving Codecov integration to the Codecov CLI, improving .NET SDK installer resiliency, and enhancing cloud test diagnostics/coverage control.
Changes:
- Switch Codecov tooling to the Codecov CLI download endpoint and update upload invocation/arguments.
- Refresh cached .NET release metadata when an expected SDK/runtime version isn’t found.
- Add cloud test enhancements (optional coverage collection, improved crash diagnostics) and adjust artifact selection for dump files.
- Bump required .NET SDK in
global.jsonto 10.0.400.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tools/publish-CodeCov.ps1 | Updates Codecov upload invocation to the Codecov CLI and new argument set. |
| tools/Install-DotNetSdk.ps1 | Adds forced re-download of cached release metadata when needed. |
| tools/Get-CodeCovTool.ps1 | Switches Codecov download host/path and strengthens signature verification handling. |
| tools/dotnet-test-cloud.ps1 | Adds -NoCoverage switch and improves crash/hang dump configuration. |
| tools/artifacts/testResults.ps1 | Avoids duplicate dump uploads by preferring TRX attachment copies when present. |
| global.json | Updates pinned .NET SDK version to 10.0.400. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
* Correct MTP -- forwarding with portable solution discovery. * Increase effective hang timeout to five minutes. * Batch all Codecov reports into one CLI invocation. * Preserve no-op behavior when no coverage exists.
Use ps1 splatting and exit instead of return
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
#553) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
…emplate Specifically, this merges [ed6df17 from that repo](AArnott/Library.Template@ed6df17).
This reverts commit 663bdc9. We can't update to this for another several days.
…emplate Specifically, this merges [a853c38 from that repo](AArnott/Library.Template@a853c38).
|
One or more custom setup steps configured for this repository failed during this Copilot code review run: Setup steps run before each review. If the review above is missing context, or no review was posted at all, the failing step above may be the cause. See the workflow run for failure details, fix your setup steps configuration, and re-request a review. Note You can configure setup steps for Copilot code review separately from Copilot cloud agent with a |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.
Suppressed comments (1)
tools/publish-CodeCov.ps1:28
Get-CodeCovTool.ps1is invoked before checking whether any*.cobertura.xmlfiles exist. This can unnecessarily download/verify the Codecov tool (and potentially fail due to missinggpg) even when there is nothing to upload. Compute$coverageFilesfirst, early-return when empty, and only then acquire the tool path.
$codeCovTool = & "$PSScriptRoot/Get-CodeCovTool.ps1"
$coverageFiles = @(Get-ChildItem -Recurse -LiteralPath $PathToCodeCoverage -Filter "*.cobertura.xml")
if ($coverageFiles.Count -eq 0) {
return
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated no new comments.
Suppressed comments (1)
tools/dotnet-test-cloud.ps1:106
- In the MTP branch,
@extraArgscurrently ends up after the--separator, so--no-progress(added when$OnCI) will be passed to the test runner instead ofdotnet test. This can cause the test invocation to fail on CI if the runner doesn’t recognize--no-progress. Move@extraArgsbefore--(dotnet arguments) and keep runner arguments after--.
-- `
--filter-not-trait 'TestCategory=FailsInCloudTest' `
@mtpArgs `
@dumpSwitches `
@extraArgs
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.
Suppressed comments (1)
tools/publish-CodeCov.ps1:28
Get-CodeCovTool.ps1is invoked (and may download/verify the Codecov CLI) before checking whether any coverage files exist. When$PathToCodeCoveragecontains no*.cobertura.xmlfiles, the script returns early but still pays the download/verification cost. Consider deferring the tool acquisition until after confirming there is something to upload.
$codeCovTool = & "$PSScriptRoot/Get-CodeCovTool.ps1"
$coverageFiles = @(Get-ChildItem -Recurse -LiteralPath $PathToCodeCoverage -Filter "*.cobertura.xml")
if ($coverageFiles.Count -eq 0) {
return
}
Updates from Library.Template microbuild commit 2d53806.
Validation could not run because this environment does not have the required .NET SDK 10.0.400 installed.