PowerShell / PowerShell/PSScriptAnalyzer

PSUseCorrectCasing malfunctioning in DSC configuration

未关闭
#1,474 4 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

Area - Formatter
主要语言
C#
星标
2.2k
派生
414
平均合并
13 小时 1 分钟
30 天内合并 PR
2

描述

PSUseCorrectCasing is erroneously changing Type to type in a DSC configuration.

Steps to reproduce

$settings = @{
    IncludeRules = @("PSUseCorrectCasing")
    Rules = @{
        PSUseCorrectCasing = @{
            Enable = $true
        }
    }
}

Invoke-Formatter -Settings $settings -ScriptDefinition @'
Configuration ApacheServer{
    Node localhost{
         nxFile vHostDirectory{
             DestinationPath = $VhostDir
             Type = "Directory"
             Ensure = "Present"
             Owner = "root"
             Mode = "744"
         }
     }
 }
'@

Expected behavior

Configuration ApacheServer{
    Node localhost{
         nxFile vHostDirectory{
             DestinationPath = $VhostDir
             Type = "Directory"
             Ensure = "Present"
             Owner = "root"
             Mode = "744"
         }
     }
 }

Actual behavior

Configuration ApacheServer{
    Node localhost{
         nxFile vHostDirectory{
             DestinationPath = $VhostDir
             type = "Directory"
             Ensure = "Present"
             Owner = "root"
             Mode = "744"
         }
     }
 }

Environment data

> $PSVersionTable
PSVersion                      7.0.0
PSEdition                      Core
GitCommitId                    7.0.0
OS                             Microsoft Windows 10.0.18363
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.0
1.18.3

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先,使用 Invoke-Formatter、PSUseCorrectCasing 规则以及报告中所示的 DSC 配置重现该问题。跟踪规则如何处理 DSC 的 nxFile 属性,并验证格式化会保留 Type,而不是将其更改为 type

由索引模型根据 Issue 内容生成。

评估

技术栈
powershell
领域
tooling
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
停滞
描述清晰度
描述清楚
新手友好度
45/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。