wcom-pr-validation 2026.5.19.3

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global wcom-pr-validation --version 2026.5.19.3
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local wcom-pr-validation --version 2026.5.19.3
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=wcom-pr-validation&version=2026.5.19.3
                    
nuke :add-package wcom-pr-validation --version 2026.5.19.3
                    

.NET pull request validation (global tool)

A .NET global tool that clones a pull request branch, builds and tests .NET solutions, runs optional quality checks (formatting, complexity, documentation, NuGet hygiene), and posts results as comments in Azure DevOps pull requests.

Features

  • Clone PR source and validate on an isolated branch
  • Restore, build (including Cake when present), and test with summarized output
  • Optional checks: dotnet format, outdated packages, solution migration, Roslyn-based complexity and XML documentation analysis
  • Repository-specific JSON config (.wcom-pr-validation.json) with per-step opt-outs, thresholds, skip patterns, pipeline timing, and PR comment limits
  • Designed for CI/CD (Azure Pipelines) using standard environment variables

Requirements

  • .NET SDK compatible with the tool’s target framework (see the package details)
  • Git
  • Network access to Azure DevOps for clone and PR comment APIs

Installation

dotnet tool install --global wcom-pr-validation

Use --add-source or a NuGet.config if you install from a private feed.

Quick start (command line)

Replace the URI, pull request id, branch, and token with your own. Example organization and project names are illustrative only.

wcom-pr-validation \
  --pr "12345" \
  --repo "https://dev.azure.com/contoso/Fabrikam/_git/sample-app" \
  --pat "<personal-access-token>" \
  --branch "refs/heads/feature/your-branch"

In Azure Pipelines, the same values are typically supplied through predefined pipeline variables; refer to your pipeline template or product documentation for the exact names.

Configuration (.wcom-pr-validation.json)

Place /.wcom-pr-validation.json in the root of the repository being validated (the clone). Property names are case-insensitive; // comments are allowed. If the file is missing, safe defaults apply.

Section Purpose
repository Toggle orphan prvalidation/* cleanup, blocking Directory.Packages.props under the clone, and NuGet source configuration (cleanupOrphanValidationBranches, createBlockingDirectoryPackagesProps, configureNuGetSources; default true).
pipeline Cleanup tuning after validation: gitHandleReleaseDelayMilliseconds, cleanupDirectoryDeleteMaxRetries, cleanupDirectoryDeleteRetryDelayMilliseconds.
comments Master PR comment switch enabled (default true), plus limits: maxDocumentationTableEntries, maxBuildCommentCharacterLength, maxFailedTestsInPrComment.
codeQuality Per-step enabled objects: solutionMigration, treatWarningsAsErrors, directoryPackagesProps, packageSourceMapping. Roslyn steps use complexity / documentation separately.
dotnet skipBuild, skipRequiredSdkInstallCheck, runFormat, checkEditorConfig, skipTests.
complexity enabled, thresholds (linesOfCode, maintainabilityIndex, cyclomaticComplexity), skipFolders, skipFiles.
documentation enabled, member toggles, skipFolders, skipFiles, excludeAutoDetectedGeneratedFiles, additionalGeneratedFileNamePatterns.
outdated mode: "off" | "reportOnly" | "upgrade"; checkTransient.

Full schema, defaults, and examples: see the Repository-Specific Configuration section in the source repository README.md (this package ships a short summary only).

Documentation

For the full option list, environment variables, workflow details, configuration reference, and troubleshooting, see the project documentation shipped with your distribution (for example the repository that builds this package).

License

This package is distributed under the MIT license. See the LICENSE file in the package for full text.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
2026.5.19.7 0 5/19/2026
2026.5.19.5 0 5/19/2026
2026.5.19.3 0 5/19/2026
2026.5.12.6 360 5/12/2026
2026.5.12.4 89 5/12/2026
2026.5.12.2 94 5/12/2026
2026.5.10.4 164 5/10/2026
2026.5.10.3 84 5/10/2026
2026.5.9.7 154 5/9/2026
2026.5.9.4 107 5/9/2026
2026.5.9.2 99 5/9/2026
2026.5.8.10 158 5/8/2026
2026.5.8.5 139 5/8/2026
2026.5.8.4 89 5/8/2026
2026.5.7.6 136 5/7/2026
2026.5.7.2 94 5/7/2026
2026.5.6.1 156 5/6/2026
2026.5.5.10 127 5/5/2026
2026.5.5.8 72 5/5/2026
2026.5.5.7 76 5/5/2026
Loading failed