Skip to main content
powershell/PSUseSingularNouns is a PSScriptAnalyzer diagnostic emitted by tally for PowerShell snippets embedded in Dockerfiles.
tally disables this rule by default for Dockerfile RUN snippets because a RUN executes statements inline rather than defining cmdlets, parameters, or modules with external callers. Re-enable it with include = ["powershell/PSUseSingularNouns"] or by setting rules.powershell.PSUseSingularNouns.severity = "warning" in .tally.toml.

Description

PowerShell team best practices state cmdlets should use singular nouns and not plurals. Suppression allows you to suppress the rule for specific function names. For example:

Configuration

Parameters

  • Enable: bool (Default value is $true) Enable or disable the rule during ScriptAnalyzer invocation.
  • NounAllowList: string[] (Default value is {'Data', 'Windows'}) Commands to be excluded from this rule. Data and Windows are common false positives and are excluded by default.

How

Change plurals to singular.

Examples

Problematic code

Correct code

Source

This rule documentation is adapted from Microsoft’s PSScriptAnalyzer documentation for UseSingularNouns, licensed under CC BY 4.0.