Open
Description
When running command provided in the reproduce section exception Exception of type 'System.Exception' was thrown.
is thrown. This message does not inform what is wrong and causes unexpected and very unclear behavior when using in automation.
It would be absolutely great when a more meaningful exception message could be thrown.
Steps to reproduce
Get-ScriptAnalyzerRule -CustomRulePath C:\someExistingPathWithoutPSSARules\ -RecurseCustomRulePath
Expected behavior
$null
or
No script analyzer rules found
Actual behavior
Get-ScriptAnalyzerRule: Exception of type 'System.Exception' was thrown.
If an unexpected error was thrown then please report the full error details using e.g. $error[0] | Select-Object *
PSMessageDetails :
Exception : System.Exception: Exception of type 'System.Exception' was thrown.
at System.Management.Automation.MshCommandRuntime.ThrowTerminatingError(ErrorRecord errorRecord)
TargetObject : Microsoft.Windows.PowerShell.ScriptAnalyzer.ScriptAnalyzer
CategoryInfo : ResourceExists: (Microsoft.Windows.P…yzer.ScriptAnalyzer:ScriptAnalyzer) [Get-ScriptAnalyzerRule], Exception
FullyQualifiedErrorId : Cannot find ScriptAnalyzer rules in the specified path,Microsoft.Windows.PowerShell.ScriptAnalyzer.Commands.GetScriptAnalyzerRuleCommand
ErrorDetails :
InvocationInfo : System.Management.Automation.InvocationInfo
ScriptStackTrace : at <ScriptBlock>, <No file>: line 1
PipelineIterationInfo : {}
Environment data
> $PSVersionTable
Name Value
---- -----
PSVersion 7.3.1
PSEdition Core
GitCommitId 7.3.1
OS Microsoft Windows 10.0.19042
Platform Win32NT
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
> (Get-Module -ListAvailable PSScriptAnalyzer).Version | ForEach-Object { $_.ToString() }
1.21.0
Activity