user9623401
user9623401

Reputation:

what's the difference between latest stable, unstable and pre-release packages

I'm new to nuget, sorry if my question sounds dumb:

Below is a screenshot: enter image description here

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

Answers (2)

thatguy
thatguy

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.

enter image description here

Upvotes: 1

Sdynest
Sdynest

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

Related Questions