Dumplings関数の使用
実行コンテキスト
これらのモジュール関数はPowerShell 7.4以降(pwsh)で実行します。PackageModuleとCoreはWindows PowerShell 5.1をサポートしていません。
Coreは、タスクスクリプトを実行する前に、Preference.yamlで宣言されたPowerShellモジュールとPackageModuleを読み込みます。Tasks/*/Script.ps1にImport-Module呼び出しを追加しないでください。
スタンドアロンリポジトリシェルでは、必要な外部モジュールとPackageModuleを読み込みます。
Import-Module PowerHTML, powershell-yaml -ErrorAction Stop
. .\Modules\PackageModule\Index.ps1
古いタスクの例が現在のメタデータと異なる場合は、Get-Command <Name> -Syntaxを使用してパラメータを確認します。関数は他の読み込まれたPackageModuleファイルに依存する場合があります。実装をコピーする代わりに、それらを再利用してください。
通常のインポートでは実装モジュールを再利用します。開発中は、. .\Modules\PackageModule\Index.ps1 -Reloadで変更されたソースを再読み込みします。データコピーにはCopy-Objectを、構造的等価性の確認にはTest-ObjectValueEqualを使用します。コピーでは、日付、スクリプトブロック、明示的なnull、ネストされた空の配列が保持されます。破棄可能な.NETリソースは複製できません。
関数グループ
- ネットワーキングを参照:GitHub API呼び出し、URI構成、リダイレクト、ヘッダー、応答デコード、埋め込みJSON。
- ファイルとアーカイブを参照:キャッシュされたダウンロード、一時パス、制限付きアーカイブ抽出。
- コンテンツとデータを参照:テキスト正規化、HTMLテキスト投影、エンコーディング、INI/XML変換、リスト、時刻変換。
- 更新フィードを参照:呼び出し元が既に取得したSquirrelおよびelectron-builderフィード文字列。
- ブラウザアクセスを参照:スコープ指定されたPlaywrightリースと分離されたブラウザ結果。
- 外部モジュールを参照:PowerHTMLおよびpowershell-yamlコマンド。
現在の操作に必要なグループのみを参照してください。ファミリー固有のパーサーAPIには$analyze-winget-installerを、マニフェストフィールドには$author-winget-manifestを、タスクライフサイクルとソースレシピには$author-dumplings-taskを使用します。
使用ルール
共有ヘルパーを再利用し、その所有権とクリーンアップ契約に従います。PackageTaskインストーラのダウンロードを$this.InstallerFilesに登録します。関数が特に明記しない限り、スタンドアロン呼び出し元が一時リソースを所有します。
バージョンレスパッケージソースの場合は、プローブ、ハッシュ、公開ブランチを自分で構成するよりも、PackageTaskのCheckInstallerUpdates/CompleteInstallerUpdatesワークフローを優先します。バージョンレスタスク契約を参照して、バリデーター、エントリごとのオーバーライド、コールバック所有権、レガシーステートマッピングを確認してください。これらのメソッドはダウンロードを自動的に登録し、検証済みのハッシュ証拠を保持します。
ブラウザリースは短く保ち、分離された値を返します。スコープ指定されたヘルパーが戻った後は、ページ、ロケーター、レスポンス、ブラウザオブジェクトを保持しないでください。ダウンロードしたインストーラをホスト上で実行しないでください。