PowerShell / PowerShell/PSScriptAnalyzer
New Rule Suggestion: Validate ps1xml Schema
オープン
まだ誰も着手していません。
Up-for-Grabs
- 主要言語
- C#
- スター
- 2.2k
- フォーク
- 414
- 平均マージ
- 13時間 1分
- マージ済み PR(30日)
- 2
説明
*.Format.ps1xml and *.Types.ps1xml have a XSD now. This can be used to create a rule to validate types and format XML schema.
In my build scripts I have the following code to validate ps1xml files.
$ps1xmlFiles = Get-ChildItem -Path $modulePath -Filter *.ps1xml
foreach ($ps1xml in $ps1xmlFiles) {
[xml]$xml = Get-Content -Path $ps1xml.FullName
$null = $xml.Schemas.Add($null, 'https://raw.githubusercontent.com/PowerShell/PowerShell/master/src/Schemas/Format.xsd')
$null = $xml.Schemas.Add($null, 'https://raw.githubusercontent.com/PowerShell/PowerShell/master/src/Schemas/Types.xsd')
$xml.Validate( { throw "File '$($ps1xml.Name)' schema error: $($_.Message)" })
}
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
提案されている PowerShell の検証スニペットと、参照されている Format.xsd および Types.xsd スキーマから始めます。PSScriptAnalyzer のルールが問題をどのように検出して報告するかを確認し、そのうえで、そのルールが *.Format.ps1xml ファイルと *.Types.ps1xml ファイルの両方を処理し、スキーマエラーを報告することを確認します。利用可能であれば、関連するルールテストを追加するか実行します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- powershell, xml
- 領域
- tooling
- issue の種類
- 機能追加
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100