From 4392521018426cc8fe97ead495162711a22aec8e Mon Sep 17 00:00:00 2001 From: Yves Fridelance Date: Fri, 27 Feb 2026 06:52:37 +0100 Subject: [PATCH] fix: add null-check fallback for DefaultEncoding in Update-ManifestField When Update-PSModuleVersion calls Update-ManifestField internally, $Script:DefaultEncoding may not be initialized, causing WriteAllText to fail with "Value cannot be null (Parameter 'encoding')". Falls back to UTF-8 with BOM when $Script:DefaultEncoding is null. Co-Authored-By: Claude Opus 4.6 --- YFridelance.PS.ModuleFactory/Private/Update-ManifestField.ps1 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/YFridelance.PS.ModuleFactory/Private/Update-ManifestField.ps1 b/YFridelance.PS.ModuleFactory/Private/Update-ManifestField.ps1 index e6a26f8..afe8596 100644 --- a/YFridelance.PS.ModuleFactory/Private/Update-ManifestField.ps1 +++ b/YFridelance.PS.ModuleFactory/Private/Update-ManifestField.ps1 @@ -204,8 +204,9 @@ $UpdatedText = $UpdatedText -replace "`n", "`r`n" # Write back with UTF-8 BOM + $Encoding = if ($null -ne $Script:DefaultEncoding) { $Script:DefaultEncoding } else { [System.Text.UTF8Encoding]::new($true) } try { - [System.IO.File]::WriteAllText($ManifestPath, $UpdatedText, $Script:DefaultEncoding) + [System.IO.File]::WriteAllText($ManifestPath, $UpdatedText, $Encoding) } catch { Write-Error "Update-ManifestField: Failed to write updated manifest '$ManifestPath': $_"