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!

upack version ranges issues



  • Hi!
    Thanks so much for the quick turnaround on the version ranges with upack packages.
    I've found a couple of issues with the implementation of PG-2084.

    1. It seems to have trouble supporting the upper open range specified on https://docs.inedo.com/docs/upack-universal-packages-manifest; Specifically with the GroupName/PackageName:[x.x.x,] I am getting the following error message (with stack trace). From a quick look at the upack lib implemenation of UniversalPackageVersionRange.TryParse, it appears as though the second version in the range must always be populated though the specification says to leave unpopulated for the latest. (Note * for the latest doesn't work either.)
      This is the full json kvp for this error
      "dependencies": ["groupname/packagename:[8.0.0,]"],
    An error occurred in the web application: Invalid version range specification.
    Details:
    URL: http://localhost:8624/feeds/test/GROUPNAME/PACKAGENAME/8.0.10/dependencies
    Referrer: https://localhost:8624/feeds/test/GROUPNAME/PACKAGENAME/8.0.10
    User: Admin
    User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:97.0) Gecko/20100101 Firefox/97.0
    Stack trace: at Inedo.UPack.UniversalPackageVersionRange.Parse(String s)
    at Inedo.UPack.UniversalPackageDependency.Parse(String s)
    at Inedo.ProGet.Feeds.Universal.UniversalPackageVersionInfo.ReadDependencies()
    at System.Lazy`1.CreateValue()
    at System.Lazy`1.LazyInitValue()
    at Inedo.ProGet.Feeds.Universal.CommonUniversalPackageInfo.<GetDependenciesAsync>d__20.MoveNext()
    
    1. When clicking the link to the dependency, the link defaults to the beginning package that satisfies the range, however I would expect it to take the user to the latest package that satisfies the range. Note: this behavior also applies to the non-inclusive lower bound. I.e., the dependency link links to a package that is not actually within the range. groupname/packagename:(1.0.0,1.1.1] will link to groupname/packagename:1.0.0 but should link to groupname/packagename:1.1.1.

  • inedo-engineer

    Hi,

    Thanks for the bug report! We've logged and fixed these as PG-2098 and PG-2099. Note that due to limitations in how that dependency table is built, it's nontrivial to have it take you to the latest package that satisfies the given range if it has an exclusive upper bound - but we have changed it to prefer linking to the upper version number if one is present.

    -Greg


Log in to reply
 

Inedo Website HomeSupport HomeCode of ConductForums GuideDocumentation