14

Probably the most widespread software version numbering scheme in use today takes the form of a dotted sequence of integers. Variants of this scheme usually share the following characteristics:

  • Version numbers consist of at least two (often three, rarely four) non-negative integers written in decimal notation and separated from each other by full stops, sometimes with an extra tag appended at the end (alpha, beta, rc, sometimes with further numbers following);
  • The ordering is big-endian: the first number denotes the most significant kind of change. As such, version tuples can be (usually) sorted lexicographically;
  • The first integer is called the ‘major’ release number, the second the ‘minor’ release number, and the third (if present) is usually called the ‘patch’ release number;
  • The first stable version is commonly denoted 1.0; major version 0 denotes pre-release or unstable versions.

Other version naming systems do exist (code names, date-based version numbers, TeX’s ‘asymptotic’ numbering), but this one is probably the most well-known. It has even made its way into popular culture, with phrases like ‘Web 2.0’ and its snowclones entering the popular lexicon. Semantic Versioning is a modern form of it (though far from universally adopted). Also, sometimes, with only major and minor release numbers present, the full version number was commonly thought of as a decimal fraction (for example, Windows 3.1 is internally known as 3.10, and these version numbers are considered equivalent; version number 0.9 or 0.99 often suggests that it’s very close to 1.0), though today this usage seems to be slowly fading away.

Where was this version numbering scheme invented? What was the first software package to use it? Did the ‘minor’ number originally denote a fraction or was it an independent number from the start?

11
  • 2
    Maybe? Though I’d also welcome a more ‘classical’ example where the first release was numbered 1.0 and the next one 1.1 or 2.0 Jun 2 at 3:49
  • 3
    LISP possibly had 1.5 because it wasn't quite 2 but it was different enough from 1. I am wondering if this form of numbering appeared after SCCS was released (1977) . SCCS used 1.1, 1.2 numbering for the files.
    – cup
    Jun 2 at 7:01
  • 4
    This numbering scheme was used in printed documents long before is was applied to software versions, so I think that the question may be ill-formed, perhaps it should ask when the dot notation originated or when it was first applied to software versions.
    – Frog
    Jun 2 at 11:00
  • 5
    I think we're just going to have to play "who can find the oldest document". Certainly DEC was using this form in the early 1960s (TOPS-10 release history), though it was somewhat product-dependent; forms like "V6B" rather than "V6.1" were also used until the late 1970s. Jun 2 at 13:04
  • 4
    At one rather large company where I worked, they told me; When the third number gets bumped, that's a bug fix that is pushed out to all customers on record, when the second number gets bumped, that's a UI/performance/feature enhancement that gets pushed out to customers who pay for support, and when the first number gets bumped, that is considered to be a new product. Jun 2 at 14:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.