PSResourceGet icon indicating copy to clipboard operation
PSResourceGet copied to clipboard

`Save-PSResource` fails when targeting Artifactory with `-Version` (`NormalizedVersion` issue)

Open sean-r-williams opened this issue 6 months ago • 0 comments

Prerequisites

  • [X] Write a descriptive title.
  • [X] Make sure you are able to repro it on the latest released version
  • [X] Search the existing issues.

Steps to reproduce

  1. Attach PSResourceGet to Artifactory repository
  2. Publish module to repository with Publish-PSResource
  3. Save the published module with Save-PSResource, specifying the version of the module with -Version

Expected behavior

PS> Save-PSResource -Name MyModule -Version 0.10.2
PS> # No error

Actual behavior

PS> Save-PSResource -Name MyModule -Version 0.10.2
Save-PSResource: Package(s) 'MyModule' could not be installed from repository 'Artifactory'.
PS>

Error details

N/A

Environment data

ModuleType Version    PreRelease Name                                ExportedCommands
---------- -------    ---------- ----                                ----------------
Binary     1.0.5                 Microsoft.PowerShell.PSResourceGet  {Find-PSResource, Get-InstalledPSResource, Get-PSResourceRepository, Get-PSScriptFileInfo…}


Name                           Value
----                           -----
PSVersion                      7.4.4
PSEdition                      Core
GitCommitId                    7.4.4
OS                             Microsoft Windows 10.0.19045
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Visuals

Running with -Verbose suggests that PSRG is using NormalizedVersion in $filter on a call to FindPackagesById(). Because Artifactory doesn't calculate this property for packages hosted on the service itself, the call returns no results and Save-PSResource fails.

sean-r-williams avatar Aug 19 '24 08:08 sean-r-williams