Reputation:
I'm new to nuget, sorry if my question sounds dumb:
Q1- Are "latest stable 2.2.0" and "2.2.0" the same ones? It seems that they are different as I can choose one of those, what makes a package "latest stable"? it is always the latest release(2.2.0 in this case)?
Q2-I often hear people talk about publish/use an unstable package, isn't it the same idea as pre-release packages? isn't that pre-release package get its name because it is not an official relase therefore might be unstable?
Upvotes: 1
Views: 6390
Reputation: 22099
Both "Latest Stable 2.2.0" and "2.2.0" are the same, it is just an indicator for you to show what is the latest version that is not a Pre-Release, so you do not include a wrong version by accident. MSDN defines a stable version as follows:
Whenever you release an updated package with a new version number, NuGet considers that one as the "latest stable release" [...] A stable release is one that's considered reliable enough to be used in production.
That differentiates a stable version from a pre-release version. It does not mean that a pre-release is inherently unstable, it is just not yet ready for production determined by the development team. However, the pre-release quality may vary greatly from unusable, buggy to polished but needs to pass additional quality control or stabilization tests before delivery. The versioning suffix can give you a hint on the current state.
To support the software release lifecycle, NuGet 1.6 and later allows for the distribution of pre-release packages, where the version number includes a semantic versioning suffix such as -alpha, -beta, or -rc.
This list is not exhaustive, there is also "pre" or "preview" out in the wild. If you check the "Include Pre-Releases" checkbox and there are pre-releases to choose from, there will be an additional option for the latest package as well. This display varies in different Visual Studio version, this is 2017.
Upvotes: 1
Reputation: 31
The difference is that the previews add small changes to performance, security and new features. You can see the list of changes in the changelog.
Q1: Versions 2.2.0 and 2.2.0 stable are the same versions. A package is called stable when new features are added and they are stable, i.e. have passed some tests.
Q2: Not really, pre-release packages can be stable and work pretty well, it's just that bug fixes and new features aren't finished yet within this version.
Upvotes: 3