PowerShell / PowerShell/PSScriptAnalyzer
Incorrectly formats an array passed to a parameter when backtick is used to separate parameters
未关闭
还没有人认领这个 Issue。
Area - Formatter
Issue - Bug
- 主要语言
- C#
- 星标
- 2.2k
- 派生
- 414
- 平均合并
- 13 小时 1 分钟
- 30 天内合并 PR
- 2
描述
Not sure what rule is responsible for this error, so this might have been reported before. 🤔 If so please close.
Steps to reproduce
$scriptDefinition = @'
$testTargetResourceReturnValue = Test-DscParameterState -CurrentValues $getTargetResourceResult `
-DesiredValues $desiredValues `
-ValuesToCheck @(
'LoginName'
'AsymmetricKeyName'
'CertificateName'
'UserType'
) `
-TurnOffTypeChecking
'@
Invoke-Formatter -ScriptDefinition $scriptDefinition
Expected behavior
No formatting change.
$testTargetResourceReturnValue = Test-DscParameterState -CurrentValues $getTargetResourceResult `
-DesiredValues $desiredValues `
-ValuesToCheck @(
'LoginName'
'AsymmetricKeyName'
'CertificateName'
'UserType'
) `
-TurnOffTypeChecking
Actual behavior
Array is wrongly indented.
$testTargetResourceReturnValue = Test-DscParameterState -CurrentValues $getTargetResourceResult `
-DesiredValues $desiredValues `
-ValuesToCheck @(
'LoginName'
'AsymmetricKeyName'
'CertificateName'
'UserType'
) `
-TurnOffTypeChecking
Environment data
$PSVersionTable
Name Value
---- -----
PSVersion 5.1.19041.1
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.19041.1
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
and
Name Value
---- -----
PSVersion 7.0.3
PSEdition Core
GitCommitId 7.0.3
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.19.1
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先,使用报告中所示的 PowerShell 脚本定义,通过 Invoke-Formatter 重现格式问题。跟踪 formatter 如何处理以反引号分隔的参数和 -ValuesToCheck 数组,然后验证数组缩进是否与预期输出一致,同时不更改其他格式。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- powershell
- 领域
- tooling
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 描述清楚
- 新手友好度
- 42/100