This repository was archived by the owner on Jun 13, 2024. It is now read-only.
This repository was archived by the owner on Jun 13, 2024. It is now read-only.
Update-ScriptInfoFile does not Preserve PrivateData #345
Closed
Description
Update-ScriptFileInfo
does not preserve PrivateData when updating other properties.
Steps to reproduce
The following code creates a script with New-ScriptFileInfo
with PrivateData
value of bar
. Update-ScriptFileInfo
is used to update Company
with a value of mycompany
. Then Test-ScriptFileInfo
and the underlying Script.ps1
has a blank PrivateData
property.
PS C:\psget> New-ScriptFileInfo -Path Script.ps1 -Author user -Description foo -PrivateData bar
PS C:\psget> Test-ScriptFileInfo -Path .\Script.ps1 | Select-Object -Property *
Name : Script
Version : 1.0
Guid : bf91827c-eebd-4ee4-a073-8c8975b25a2a
Path : C:\psget\Script.ps1
ScriptBase : C:\psget
Description : foo
Author : user
CompanyName :
Copyright :
Tags :
ReleaseNotes :
RequiredModules :
ExternalModuleDependencies :
RequiredScripts :
ExternalScriptDependencies :
LicenseUri :
ProjectUri :
IconUri :
DefinedCommands :
DefinedFunctions :
DefinedWorkflows :
PrivateData : bar
PS C:\psget> Update-ScriptFileInfo -Path .\Script.ps1 -CompanyName mycompany
PS C:\psget> Test-ScriptFileInfo -Path .\Script.ps1 | Select-Object -Property *
Name : Script
Version : 1.0
Guid : bf91827c-eebd-4ee4-a073-8c8975b25a2a
Path : C:\psget\Script.ps1
ScriptBase : C:\psget
Description : test
Author : user
CompanyName : mycompany
Copyright :
Tags :
ReleaseNotes :
RequiredModules :
ExternalModuleDependencies :
RequiredScripts :
ExternalScriptDependencies :
LicenseUri :
ProjectUri :
IconUri :
DefinedCommands :
DefinedFunctions :
DefinedWorkflows :
PrivateData :
Expected behavior
PrivateData value 'bar' should be preserved.
PS C:\psget> Test-ScriptFileInfo -Path .\Script.ps1 | Select-Object -Property *
Name : Script
Version : 1.0
Guid : bf91827c-eebd-4ee4-a073-8c8975b25a2a
Path : C:\psget\Script.ps1
ScriptBase : C:\psget
Description : test
Author : user
CompanyName : mycompany
Copyright :
Tags :
ReleaseNotes :
RequiredModules :
ExternalModuleDependencies :
RequiredScripts :
ExternalScriptDependencies :
LicenseUri :
ProjectUri :
IconUri :
DefinedCommands :
DefinedFunctions :
DefinedWorkflows :
PrivateData : bar
Actual behavior
PrivateData value 'bar' is not preserved.
PS C:\psget> Test-ScriptFileInfo -Path .\Script.ps1 | Select-Object -Property *
Name : Script
Version : 1.0
Guid : bf91827c-eebd-4ee4-a073-8c8975b25a2a
Path : C:\psget\Script.ps1
ScriptBase : C:\psget
Description : test
Author : user
CompanyName : mycompany
Copyright :
Tags :
ReleaseNotes :
RequiredModules :
ExternalModuleDependencies :
RequiredScripts :
ExternalScriptDependencies :
LicenseUri :
ProjectUri :
IconUri :
DefinedCommands :
DefinedFunctions :
DefinedWorkflows :
PrivateData :
Environment data
PS C:\psget> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.17134.228
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.17134.228
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
PS C:\psget> Get-Module -ListAvailable PowerShellGet,PackageManagement
Directory: C:\Program Files\WindowsPowerShell\Modules
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Script 1.1.7.2 PackageManagement {Find-Package, Get-Package, Get-PackageProvider, Get-Packa...
Binary 1.0.0.1 PackageManagement {Find-Package, Get-Package, Get-PackageProvider, Get-Packa...
Binary 1.0.0.0 PackageManagement {Find-Package, Get-Package, Get-PackageProvider, Get-Packa...
Script 2.0.1 PowerShellGet {Find-Command, Find-DSCResource, Find-Module, Find-RoleCap...
Script 1.6.6 PowerShellGet {Find-Command, Find-DSCResource, Find-Module, Find-RoleCap...
Script 1.0.0.1 PowerShellGet {Install-Module, Find-Module, Save-Module, Update-Module...}
PS C:\psget> Get-PackageProvider -ListAvailable
Name Version DynamicOptions
---- ------- --------------
msi 3.0.0.0 AdditionalArguments
msu 3.0.0.0
nuget 2.8.5.208
NuGet 2.8.5.210 Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterOnTag...
PowerShellGet 2.0.1.0 PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherCheck, ...
PowerShellGet 1.6.6.0
PowerShellGet 1.0.0.1
Programs 3.0.0.0 IncludeWindowsInstaller, IncludeSystemComponent