Project

PSPublishModule

Build, test, version, sign, and publish PowerShell modules with reusable PowerForge pipelines.

Stars 48
Forks 16
PowerShell Gallery downloads 17,213
Release v3.0.186
Language: C# Updated: 2026-11-04
Command

New-ConfigurationCompatibility

Module
PSPublishModule
Inputs
None

Creates configuration for PowerShell compatibility checking during module build.

Syntax

New-ConfigurationCompatibility
[-Enable]
[-ExcludeDirectories <String[]>]
[-ExportReport]
[-FailOnIncompatibility]
[-MinimumCompatibilityPercentage <Int32>]
[-ReportFileName <String>]
[-RequireCrossCompatibility]
[-RequirePS51Compatibility]
[-RequirePS7Compatibility]
[-Severity <Off|Warning|Error>]
[<CommonParameters>]
#
Parameter set: All Parameter Sets

Description

Adds a compatibility validation step to the build pipeline. This can be used to enforce that the module source is compatible with Windows PowerShell 5.1 and/or PowerShell 7+.

Examples

Require cross-version compatibility and fail the build on issues

New-ConfigurationCompatibility -Enable -RequireCrossCompatibility -FailOnIncompatibility -MinimumCompatibilityPercentage 95 -ExportReport

Enables validation and exports a CSV report when issues are detected.

Require PowerShell 7 compatibility only

New-ConfigurationCompatibility -Enable -RequirePS7Compatibility -FailOnIncompatibility -ExportReport

Parameters

-Enable SwitchParameter optional
Enable PowerShell compatibility checking during build.
-ExcludeDirectories String[] optional
Directory names to exclude from compatibility analysis.
-ExportReport SwitchParameter optional
Export detailed compatibility report to the artifacts directory.
-FailOnIncompatibility SwitchParameter optional
Fail the build if compatibility issues are found.
-MinimumCompatibilityPercentage Int32 optional
Minimum percentage of files that must be cross-compatible. Default is 95.
-ReportFileName String optional
Custom filename for the compatibility report.
-RequireCrossCompatibility SwitchParameter optional
Require cross-version compatibility (both PS 5.1 and PS 7).
-RequirePS51Compatibility SwitchParameter optional
Require PowerShell 5.1 compatibility.
-RequirePS7Compatibility SwitchParameter optional
Require PowerShell 7 compatibility.
-Severity ValidationSeverity optional
Severity for compatibility issues (overrides FailOnIncompatibility when specified).
Possible values: Off, Warning, Error

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.