Rule request: AvoidUsingOutNull
Summary of the new feature
I want PSScriptAnalyzer to flag uses of Out-Null for output suppression so that I can maintain consistent code style and potentially gain minor performance improvements.
Currently, many PowerShell scripts use | Out-Null to suppress command output, but there are alternative approaches like [void], > $null, or assignment to $null that are stylistically preferred by many developers. While the performance difference is minimal, having a consistent approach to output suppression improves code readability and maintainability.
Proposed technical implementation details (optional)
-
Rule Name:
AvoidUsingOutNull -
Severity:
Information(since this is primarily a style preference) -
Category:
Style -
Detection: Flag any pipeline that ends with
| Out-Null -
Suggested alternatives:
-
[void](command) -
command > $null -
$null = command
-
-
Example violation:
Get-Process | Out-Null -
Example fix:
[void](Get-Process)orGet-Process > $null
The rule should provide informational messages suggesting these alternatives while acknowledging that this is primarily a stylistic choice rather than a critical performance issue.
What is the latest version of PSScriptAnalyzer at the point of writing
1.24.0