PowerShell / PSResourceGet

PSResourceGet is the package manager for PowerShell
https://www.powershellgallery.com/packages/Microsoft.PowerShell.PSResourceGet
MIT License
483 stars 92 forks source link

v2+Artifactory: Search result `Name` property is blank #1534

Closed sean-r-williams closed 7 months ago

sean-r-williams commented 7 months ago

Prerequisites

Steps to reproduce

Option 1:

Option 2 (clearer indication):

Expected behavior

"Name" field is populated with package name

Actual behavior

"Name" field is empty

Error details

No errors

Environment data

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

Name                           Value
----                           -----
PSVersion                      7.4.1
PSEdition                      Core
GitCommitId                    7.4.1
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

image

Here's the raw response from Artifactory when calling https://artifactory.f.q.d.n/artifactory/api/nuget/v2/psgallery-nuget-remote/FindPackagesById()?id='JiraPS'&$inlinecount=allpages&$filter=IsLatestVersion and Id eq 'JiraPS' and substringof('PSScript', Tags) eq false: (psgallery-nuget-remote is a remote feed configured to point to PowerShell Gallery):

<?xml version='1.0' encoding='UTF-8'?>
<feed xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom" xml:base="https://artifactory.f.q.d.n/artifactory/api/nuget/psgallery-nuget-remote/">
  <title type="text"></title>
  <id>http://schemas.datacontract.org/2004/07/</id>
  <updated>2024-01-23T04:00:05Z</updated>
  <link rel="self" href="https://www.powershellgallery.com/api/v2/Packages"/>
  <m:count>1</m:count>
  <entry>
    <id>https://artifactory.f.q.d.n/artifactory/api/nuget/psgallery-nuget-remote/Packages(Id='JiraPS',Version='2.14.7')</id>
    <lowerCaseId>https://artifactory.f.q.d.n/artifactory/api/nuget/psgallery-nuget-remote/packages(id='jiraps',version='2.14.7')</lowerCaseId>
    <title type="text">JiraPS</title>
    <updated>2024-01-23T03:55:56Z</updated>
    <author>
      <name>AtlassianPS</name>
    </author>
    <link rel="edit" href="https://www.powershellgallery.com/api/v2/Packages(Id='JiraPS',Version='2.14.7')"/>
    <link rel="self" href="https://www.powershellgallery.com/api/v2/Packages(Id='JiraPS',Version='2.14.7')"/>
    <category term="NuGetGallery.OData.V2FeedPackage" scheme="http://schemas.microsoft.com/ado/2007/08/dataservices/scheme"/>
    <content type="application/zip" src="https://artifactory.f.q.d.n/artifactory/api/nuget/psgallery-nuget-remote/Download/JiraPS/2.14.7"/>
    <m:properties xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices">
      <d:Version>2.14.7</d:Version>
      <d:NormalizedVersion>2.14.7</d:NormalizedVersion>
      <d:LastEdited>
        <iMillis>0</iMillis>
      </d:LastEdited>
      <d:LicenseReportUrl></d:LicenseReportUrl>
      <d:LicenseNames></d:LicenseNames>
      <d:Copyright>(c) 2017 AtlassianPS. All rights reserved.</d:Copyright>
      <d:Created m:type="Edm.DateTime">2023-08-25T07:32:57.693</d:Created>
      <d:Dependencies></d:Dependencies>
      <d:Description>Windows PowerShell module to interact with Atlassian JIRA</d:Description>
      <d:DownloadCount m:type="Edm.Int32">1547351</d:DownloadCount>
      <d:GalleryDetailsUrl>https://www.powershellgallery.com/packages/JiraPS/2.14.7</d:GalleryDetailsUrl>
      <d:IconUrl>https://AtlassianPS.org/assets/img/JiraPS.png</d:IconUrl>
      <d:IsLatestVersion m:type="Edm.Boolean">true</d:IsLatestVersion>
      <d:IsAbsoluteLatestVersion m:type="Edm.Boolean">true</d:IsAbsoluteLatestVersion>
      <d:IsPrerelease m:type="Edm.Boolean">false</d:IsPrerelease>
      <d:Language></d:Language>
      <d:Published m:type="Edm.DateTime">2023-08-25T07:32:57.693</d:Published>
      <d:LicenseUrl>https://github.com/AtlassianPS/JiraPS/blob/master/LICENSE</d:LicenseUrl>
      <d:PackageHash>59IjJWwnOG1tpBsyVHY9vKULULBHCydgNIbJTy2DO3MPjllzAYOI83CMddYzXPNBJ/kx3deZPEAnPXTeYdw+mw==</d:PackageHash>
      <d:PackageHashAlgorithm>SHA512</d:PackageHashAlgorithm>
      <d:PackageSize m:type="Edm.Int64">97537</d:PackageSize>
      <d:ProjectUrl>https://AtlassianPS.org/module/JiraPS</d:ProjectUrl>
      <d:ReportAbuseUrl>https://www.powershellgallery.com/packages/JiraPS/2.14.7/ReportAbuse</d:ReportAbuseUrl>
      <d:ReleaseNotes></d:ReleaseNotes>
      <d:RequireLicenseAcceptance m:type="Edm.Boolean">false</d:RequireLicenseAcceptance>
      <d:Tags>powershell powershell-gallery readthedocs rest api atlassianps jira atlassian PSModule PSFunction_Add-JiraFilterPermission PSCommand_Add-JiraFilterPermission PSFunction_Add-JiraGroupMember PSCommand_Add-JiraGroupMember PSFunction_Add-JiraIssueAttachment PSCommand_Add-JiraIssueAttachment PSFunction_Add-JiraIssueComment PSCommand_Add-JiraIssueComment PSFunction_Add-JiraIssueLink PSCommand_Add-JiraIssueLink PSFunction_Add-JiraIssueWatcher PSCommand_Add-JiraIssueWatcher PSFunction_Add-JiraIssueWorklog PSCommand_Add-JiraIssueWorklog PSFunction_Find-JiraFilter PSCommand_Find-JiraFilter PSFunction_Format-Jira PSCommand_Format-Jira PSFunction_Get-JiraComponent PSCommand_Get-JiraComponent PSFunction_Get-JiraConfigServer PSCommand_Get-JiraConfigServer PSFunction_Get-JiraField PSCommand_Get-JiraField PSFunction_Get-JiraFilter PSCommand_Get-JiraFilter PSFunction_Get-JiraFilterPermission PSCommand_Get-JiraFilterPermission PSFunction_Get-JiraGroup PSCommand_Get-JiraGroup PSFunction_Get-JiraGroupMember PSCommand_Get-JiraGroupMember PSFunction_Get-JiraIssue PSCommand_Get-JiraIssue PSFunction_Get-JiraIssueAttachment PSCommand_Get-JiraIssueAttachment PSFunction_Get-JiraIssueAttachmentFile PSCommand_Get-JiraIssueAttachmentFile PSFunction_Get-JiraIssueComment PSCommand_Get-JiraIssueComment PSFunction_Get-JiraIssueCreateMetadata PSCommand_Get-JiraIssueCreateMetadata PSFunction_Get-JiraIssueEditMetadata PSCommand_Get-JiraIssueEditMetadata PSFunction_Get-JiraIssueLink PSCommand_Get-JiraIssueLink PSFunction_Get-JiraIssueLinkType PSCommand_Get-JiraIssueLinkType PSFunction_Get-JiraIssueType PSCommand_Get-JiraIssueType PSFunction_Get-JiraIssueWatcher PSCommand_Get-JiraIssueWatcher PSFunction_Get-JiraIssueWorklog PSCommand_Get-JiraIssueWorklog PSFunction_Get-JiraPriority PSCommand_Get-JiraPriority PSFunction_Get-JiraProject PSCommand_Get-JiraProject PSFunction_Get-JiraRemoteLink PSCommand_Get-JiraRemoteLink PSFunction_Get-JiraServerInformation PSCommand_Get-JiraServerInformation PSFunction_Get-JiraSession PSCommand_Get-JiraSession PSFunction_Get-JiraUser PSCommand_Get-JiraUser PSFunction_Get-JiraVersion PSCommand_Get-JiraVersion PSFunction_Invoke-JiraIssueTransition PSCommand_Invoke-JiraIssueTransition PSFunction_Invoke-JiraMethod PSCommand_Invoke-JiraMethod PSFunction_Move-JiraVersion PSCommand_Move-JiraVersion PSFunction_New-JiraFilter PSCommand_New-JiraFilter PSFunction_New-JiraGroup PSCommand_New-JiraGroup PSFunction_New-JiraIssue PSCommand_New-JiraIssue PSFunction_New-JiraSession PSCommand_New-JiraSession PSFunction_New-JiraUser PSCommand_New-JiraUser PSFunction_New-JiraVersion PSCommand_New-JiraVersion PSFunction_Remove-JiraFilter PSCommand_Remove-JiraFilter PSFunction_Remove-JiraFilterPermission PSCommand_Remove-JiraFilterPermission PSFunction_Remove-JiraGroup PSCommand_Remove-JiraGroup PSFunction_Remove-JiraGroupMember PSCommand_Remove-JiraGroupMember PSFunction_Remove-JiraIssue PSCommand_Remove-JiraIssue PSFunction_Remove-JiraIssueAttachment PSCommand_Remove-JiraIssueAttachment PSFunction_Remove-JiraIssueLink PSCommand_Remove-JiraIssueLink PSFunction_Remove-JiraIssueWatcher PSCommand_Remove-JiraIssueWatcher PSFunction_Remove-JiraRemoteLink PSCommand_Remove-JiraRemoteLink PSFunction_Remove-JiraSession PSCommand_Remove-JiraSession PSFunction_Remove-JiraUser PSCommand_Remove-JiraUser PSFunction_Remove-JiraVersion PSCommand_Remove-JiraVersion PSFunction_Set-JiraConfigServer PSCommand_Set-JiraConfigServer PSFunction_Set-JiraFilter PSCommand_Set-JiraFilter PSFunction_Set-JiraIssue PSCommand_Set-JiraIssue PSFunction_Set-JiraIssueLabel PSCommand_Set-JiraIssueLabel PSFunction_Set-JiraUser PSCommand_Set-JiraUser PSFunction_Set-JiraVersion PSCommand_Set-JiraVersion PSIncludes_Function</d:Tags>
      <d:Title></d:Title>
      <d:VersionDownloadCount m:type="Edm.Int32">118937</d:VersionDownloadCount>
      <d:Authors>AtlassianPS</d:Authors>
      <d:MinClientVersion></d:MinClientVersion>
      <d:Summary></d:Summary>
    </m:properties>
  </entry>
</feed>
sean-r-williams commented 7 months ago

I see that #1428 attempted to fix this issue with some custom behavior for Artifactory - however, it appears that this is looking at the entry -> properties -> Title element (which appears to be either null or empty in every Artifactory response I've looked at), whereas entry -> Title is the one actually containing the package name.