We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The analysis of this code seems to reference a command that is not in the current scope :
#Requires -Modules PSCX $code=@' function Convert-Object{ [CmdletBinding()] [OutputType([String])] Param ( [Parameter(Mandatory=$true)] $InputObject ) function Get-TypeName { param() $InputObject.pstypenames[0] -Replace '^Selected\.','' } function MethodHeader { param() $type=Get-TypeName return $type } MethodHeader }#Convert-Object '@ Invoke-ScriptAnalyzer -ScriptDefinition $code # RuleName Severity ScriptName Line Message # -------- -------- ---------- ---- ------- # PSUseCmdletCorrectly Warning 18 Cmdlet 'Get-TypeName' may be used incorrectly. # Please check that all mandatory parameters are # supplied. gcm Get-TypeName # CommandType Name Version Source # ----------- ---- ------- ------ # Cmdlet Get-TypeName 3.2.0.0 Pscx Remove-module pscx Invoke-ScriptAnalyzer -ScriptDefinition $code #same warning #close the PS session #move 'C:\Program Files (x86)\PowerShell Community Extensions' to 'C:\temp' #new PS Session -NoProfile $code=@' function Convert-Object{ [CmdletBinding()] [OutputType([String])] Param ( [Parameter(Mandatory=$true)] $InputObject ) function Get-TypeName { param() $InputObject.pstypenames[0] -Replace '^Selected\.','' } function MethodHeader { param() $type=Get-TypeName return $type } MethodHeader }#Convert-Object '@ Invoke-ScriptAnalyzer -ScriptDefinition $code #Ok, no PSSA Warning $Env:Path -split ';' # %SystemRoot%\system32\WindowsPowerShell\v1.0\ # C:\ProgramData\Oracle\Java\javapath # C:\Program Files\Common Files\Microsoft Shared\Windows Live # C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live # C:\Windows\system32 # C:\Windows # C:\Windows\System32\Wbem # C:\Program Files (x86)\WinMerge # c:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\ # c:\Program Files\Microsoft SQL Server\100\Tools\Binn\ # c:\Program Files\Microsoft SQL Server\100\DTS\Binn\ # C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static # C:\Program Files (x86)\Microsoft Team Foundation Server 2012 Power Tools\Best Practices Analyzer\ # C:\Program Files (x86)\Microsoft Team Foundation Server 2012 Power Tools\ # C:\Program Files (x86)\Windows Live\Shared # C:\Program Files\Microsoft\Web Platform Installer\ # C:\Program Files\Microsoft SQL Server\110\Tools\Binn\ # C:\Program Files\Windows Fabric\bin\Fabric\Fabric.Code.1.0 # C:\Program Files\SourceGear\Common\DiffMerge\ # C:\Program Files (x86)\Disconnect\Disconnect Desktop\openvpn\bin # C:\Program Files (x86)\Git\cmd # C:\Windows\SysWOW64\WindowsPowerShell\v1.0\Modules\TShell\TShell\ # C:\Windows\System32\WindowsPowerShell\v1.0\ # C:\Program Files\Git\cmd # C:\ProgramData\chocolatey\bin # C:\Program Files\WindowsPowerShell\Scripts # C:\Windows\System32\WindowsPowerShell\v1.0\ # C:\Program Files\TortoiseGit\bin # C:\Program Files\dotnet\ # C:\Users\Laurent\AppData\Local\atom\bin # C:\Program Files (x86)\Microsoft VS Code\bin # C:\Dev\NuGet # C:\Users\Laurent\Documents\WindowsPowerShell\Scripts # C:\Program Files (x86)\PowerShell Community Extensions\Pscx3\Pscx\Apps $env:PSmodulePath -split ';' # C:\Users\Laurent\Documents\WindowsPowerShell\Modules\ # C:\Windows\system32\WindowsPowerShell\v1.0\Modules\ # C:\Program Files (x86)\PowerShell Community Extensions\Pscx3\ # C:\Program Files\Service Bus\1.0\ # C:\Program Files\Workflow Manager\1.0\ # C:\Program Files (x86)\Microsoft SDKs\Azure\PowerShell\ServiceManagement # C:\Program Files\WindowsPowerShell\Modules
Versions :
$PSVersionTable Name Value ---- ----- PSVersion 5.1.14409.1005 PSEdition Desktop PSCompatibleVersions {1.0, 2.0, 3.0, 4.0, 5.0, 5.1.14409.1005} BuildVersion 10.0.14409.1005 CLRVersion 4.0.30319.42000 WSManStackVersion 3.0 PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1
PSScriptAnalyzer version 1.11.1 Windows Seven x64
The text was updated successfully, but these errors were encountered:
This is a bug. The rule should looks at the locally defined Get-TypeName function first first before looking at installed functions/cmdlets.
Get-TypeName
Sorry, something went wrong.
No branches or pull requests
The analysis of this code seems to reference a command that is not in the current scope :
Versions :
PSScriptAnalyzer version 1.11.1
Windows Seven x64
The text was updated successfully, but these errors were encountered: