You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When the value of the -Settings parameter is set to $_ inside of a foreach-object loop, PSScriptAnalyzer is unable to find the settings file.
Steps to reproduce:
Create a file that violates a rule that is only checked if a particular setting is triggered.
IE:
if ($true)
{
Write-Output 'Something'
}
This code will throw errors if -Settings is set to CodeFormattingStroustrup but not if -Settings it is omitted.
The following command returns warnings. invoke-scriptanalyzer -path C:\files\ax.ps1 -Settings 'CodeFormattingStroustrup'
But this one does not. 'CodeFormattingStroustrup' | % { invoke-scriptanalyzer -path C:\files\ax.ps1 -Settings $_ }
Using -Verbose on the non-working example shows that PSScriptAnalyzer cannot find a settings file.
This occurs on version 1.15.0 of PSScriptAnalyzer.
Screenshot
The text was updated successfully, but these errors were encountered:
@ThmsRynr This still reproes in 1.16.1 and in the latest version of development branch. There have been recent improvements to the -Setting parameter object parsing to allow it parsing expressions that resolve to a string at the end (in BeginProcessing, the object is not a string yet but a PSObject), therefore the improvement also needs to take those built in settings into account as well. I opened a PR with a fix for it, I just need to add a test and then we are ready to go (and hopefully this makes it into the next upcoming version)
When the value of the
-Settings
parameter is set to$_
inside of a foreach-object loop, PSScriptAnalyzer is unable to find the settings file.Steps to reproduce:
Create a file that violates a rule that is only checked if a particular setting is triggered.
IE:
This code will throw errors if
-Settings
is set toCodeFormattingStroustrup
but not if-Settings
it is omitted.The following command returns warnings.
invoke-scriptanalyzer -path C:\files\ax.ps1 -Settings 'CodeFormattingStroustrup'
But this one does not.
'CodeFormattingStroustrup' | % { invoke-scriptanalyzer -path C:\files\ax.ps1 -Settings $_ }
Using
-Verbose
on the non-working example shows that PSScriptAnalyzer cannot find a settings file.This occurs on version 1.15.0 of PSScriptAnalyzer.
Screenshot

The text was updated successfully, but these errors were encountered: