So far as I can tell, this hasn't been reported, but it is related to issue #2210 which I was also going to include. I've also gone through and applied the surfaced corrections one-by-one, which produces the exact same results in VS Code with the latest PowerShell extension (pre-release, 2026.1.2, which has PSScriptAnalyzer 1.25.0).
Steps to reproduce
Run the following command:
Invoke-Formatter -ScriptDefinition "if (`$RegEx) { '-match' } else { '-like' }" -Settings @{IncludeDefaultRules=$true;Rules=@{PSPlaceOpenBrace=@{Enable=$true;IgnoreOneLineBlock=$false;};PSPlaceCloseBrace=@{Enable=$true;IgnoreOneLineBlock=$false;}}}
Expected behavior
if ($RegEx) {
'-match'
} else {
'-like'
}
Actual behavior
if ($RegEx) {
'-match'
}
else {
'-like'
}
Environment data
> $PSVersionTable
Name Value
---- -----
PSVersion 7.6.6
PSEdition Core
GitCommitId 7.6.6
OS Microsoft Windows 10.0.22631
Platform Win32NT
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.4
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
> (Get-Module -ListAvailable PSScriptAnalyzer).Version | ForEach-Object { $_.ToString() }
1.25.0
1.25.0
The settings passed, a little easier to read, if needed.
@{
IncludeDefaultRules = $true
Rules = @{
PSPlaceOpenBrace = @{
Enable = $true
IgnoreOneLineBlock = $false
}
PSPlaceCloseBrace = @{
Enable = $true
IgnoreOneLineBlock = $false
}
}
}
So far as I can tell, this hasn't been reported, but it is related to issue #2210 which I was also going to include. I've also gone through and applied the surfaced corrections one-by-one, which produces the exact same results in VS Code with the latest PowerShell extension (pre-release, 2026.1.2, which has PSScriptAnalyzer 1.25.0).
Steps to reproduce
Run the following command:
Expected behavior
Actual behavior
Environment data
The settings passed, a little easier to read, if needed.