[英]Why is the wrong version in a MyGet feed labelled as the latest version of the package?
There are several versions created for MyGet : System.Linq.Dynamic.Core :为MyGet创建了多个版本: System.Linq.Dynamic.Core :
However for some reason the oldest version still has the flag latest
?但是由于某种原因,最旧的版本仍然有
latest
的标志? Is this a bug in MyGet, or is there a setting to fix this ?这是 MyGet 中的错误,还是有解决此问题的设置?
I was facing the same issue.我面临着同样的问题。 I have found that it is not the issue with myget flagging the latest packages, it is to do with NuGet package versioning rules.
我发现这不是 myget 标记最新包的问题,而是与 NuGet 包版本控制规则有关。
Please read this link to understand your issue https://docs.microsoft.com/en-us/nuget/concepts/package-versioning请阅读此链接以了解您的问题https://docs.microsoft.com/en-us/nuget/concepts/package-versioning
For me, the issue was as follows,对我来说,问题如下,
The packages were versioned like,软件包的版本如下,
7.2.0.build999 - This was flagged latest 7.2.0.build999 - 这被标记为最新
7.2.0.build1000 - This was not flagged latest even uploaded after 999 and versioned higher than 999 7.2.0.build1000 - 即使在 999 之后上传并且版本高于 999 也没有标记为最新
And the reason was,而原因是,
When resolving package references and multiple package versions differ only by suffix, NuGet chooses a version without a suffix first, then applies precedence to pre-release versions in reverse alphabetical order.
当解析包引用并且多个包版本仅因后缀不同时,NuGet 首先选择一个没有后缀的版本,然后按字母顺序倒序对预发布版本应用优先级。
Hope this helps :)希望这可以帮助 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.