Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.
If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!
BUG: NuGet registration JSON missing icon information
-
I am using a nupkg that has an icon entry instead of iconUrl (the latter being deprecated) but this causes ProGet to omit the icon information. I suspect the correct thing to do is to put in an iconUrl with a link to the file on the proget server (similar to what happens with an embedded license). I don't have any packages released on nuget to compare the icon situation but here is what I noticed regarding both LICENSE.txt and the icon.
On nuget (a package using embedded license, but iconUrl) using
https://api.nuget.org/v3/registration5-gz-semver2/<package>/index.json
:X means "arbitrary index" since it won't be meaningful in this context
items[X].catalogEntry.iconUrl: https://api.nuget.org/v3-flatcontainer/<package>/<version>/icon
items[X].catalogEntry.licenseUrl: https://www.nuget.org/packages/<package>/<version>/license
On proget (a package using embedded license and icon) for the same keys:
items[X].catalogEntry.iconUrl
does not exist
items[X].catalogEntry.licenseUrl: https://aka.ms/deprecateLicenseUrl
items[X].catalogEntry.licenseExpression: package://<package>/<version>/LICENSE.txt
I also see the nuget client asking ProGet for
[url]/v3-flatcontainer/<package>/<version>/license
to which is responds 404 OData method not implemented, suggesting that it might be baked into the protocol somehow? I don't see a reference to that URL in the index.json. My conclusion is that iconUrl and licenseUrl should be present in this scenario and should point to proget endpoints that serve the content.
-
Hi @jim-borden_4965 ,
I think the iconUrl will be relatively easy to implement, but not so much the licenseUrl...
Can you provide a download link to a package that I can test with? If it's easy we can make the fix for iconUrl.
Cheers,
Alana
-
Sorry I didn't notice this reply! Sure, our published packages have used embedded licenses for several versions now. Here is one -> https://www.nuget.org/api/v2/package/Couchbase.Lite/3.0.2 and here is a link to how the server shows it https://www.nuget.org/packages/Couchbase.Lite/3.0.2/License
-
Oh, if you meant an example with embedded icon, .NET official packages do this too:
https://www.nuget.org/packages/System.Collections.Immutable/7.0.0-rc.1.22426.10