FACTOID # 154: Women make up more than 10% of the prison population in only six countries: Thailand, , Qatar, Paraguay, Costa Rica, and Singapore.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "Version" also viewed:
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Version

Version is a state of an object or concept that varies from its previous state or condition. The term "version" is usually used in the context of computer software, in which the version of the software product changes with each modification in the software. Revision control is very useful for keeping track of different versions of information. A screenshot of computer software running in Windows XP. Software fundamentally is the unique image or representation of physical or material alignment that constitutes configuration to or functional identity of a machine, usually a computer. ... Revision control (also known as Version control) is the management of multiple revisions of the same unit of information. ...

Contents

[edit]

Software versioning schemes

A variety of version numbering schemes have been created to keep track of different versions of a piece of software. The ubiquity of computers has also led to these schemes being used in contexts outside computing.

[edit]

Numeric

The most common software versioning scheme is a scheme in which different major releases of the software each receive a unique numerical identifier. This is typically expressed as three numbers, separated by periods, such as version 2.4.13. One very commonly followed structure for these numbers is: Image File history File links VersionNumbers1. ...

major.minor[.revision[.build]]

or

major.minor[.maintenance[.build]]

In most commercial software, the first released version of a software product has version 1.0. Numbers below 1 mean alpha or beta versions, i.e., versions for testing purposes or internal use, or versions that aren't stable enough for general or practical deployment.


In principle, in subsequent releases, the major number is increased when there are significant jumps in functionality, the minor number is incremented when only minor features or significant fixes have been added, and the revision number is incremented when minor bugs are fixed. A typical product might use the numbers 0.9 (for beta software), 0.9.1, 0.9.2, 0.9.3, 1.0, 1.0.1, 1.0.2, 1.1, 1.1.1, 2.0, 2.0.1, 2.0.2, 2.1, 2.1.1, 2.1.2, 2.2, etc. Developers may at times jump (for example) from version 5.0 to 5.5 to indicate that significant features have been added, but not enough to warrant incrementing the major version number. Software development stages Development stage terminology expresses how the development of a piece of software has progressed and how much further development it may require. ...


There is sometimes a fourth, unpublished number which denotes the software build (as used by Microsoft). Some companies also include the build date. Version numbers may also include letters and other characters, such as Lotus 1-2-3 Release 1a. The Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual sales of US$44. ... Lotus 1-2-3 is a spreadsheet program from Lotus Software (now part of IBM). ...


A different approach is to use the major and minor numbers, along with an alphanumeric string denoting the release type, i.e. 'alpha', 'beta' or 'release candidate'. A release train using this approach might look like 0.5, 0.6, 0.7, 0.8, 0.9 == 1.0b1, 1.0b2 (with some fixes), 1.0b3 (with more fixes) == 1.0rc1 (which, if it's stable enough) == 1.0. If 1.0rc1 turns out to have bugs which must be fixed, it turns into 1.0rc2, and so on. The important characteristic of this approach is that the first version of a given level (beta, RC, production) must be identical to the last version of the release below it: you cannot make any changes at all from the last beta to the first RC, or from the last RC to production. If you do, you must roll out another release at that lower level.


This is to permit users (or potential adopters) to evaluate how much real-world testing a given build of code has actually undergone. If changes are made between, say, 1.3rc4 and the production release of 1.3, then that release, which asserts that it has had a production-grade level of testing in the real world, in fact contains changes which have not necessarily been tested in the real world at all. This approach commonly permits the third level of numbering ("change"), but does not apply this level of rigor to changes in that number: 1.3.1, 1.3.2, 1.3.3, 1.3.4... 1.4b1, etc.

[edit]

Date

The Wine project used a date versioning scheme, which uses the year followed by the month followed by the day of the release; for example, "Wine 20040505". Wine is now on a "standard" release track; the most current version as of 8/2006 is 0.9.19. The Wine project aims to allow a PC running a Unix-like operating system and the X Window System to execute x86 programs for Microsoft Windows. ...

[edit]

Year of release

Other examples, identifying versions by year (Adobe Illustrator 88, WordPerfect Office 2003) Adobe Illustrator is a vector-based drawing program developed and marketed by Adobe Systems. ... WordPerfect Office is an Office applications suite. ...

[edit]

Alphanumeric codes

[edit]

// == Macromedia Flash == ==]] Using Macromedia Flash 8 (bundled in Studio 8) in Windows XP. Maintainer: Adobe Systems (formerly Macromedia) Latest release: 8 / September 30th, 2005 OS: Windows (no native Windows XP Professional x64 Edition support), Mac OS X, Linux (i386 only, via wine [1]) Use: Multimedia Content Creator License: Proprietary Website... Adobe Photoshop, or simply Photoshop, is a graphics editor developed and published by Adobe Systems. ...

Roman numerals

  • Apple's Mac OS X, representing version 10
[edit]

Mac OS X (officially pronounced Mac Oh-Ess Ten) is a line of open source graphical operating systems, with proprietary higher level API layers, developed, marketed, and sold by Apple Computer, the latest of which is pre-loaded on all currently shipping Macintosh computers. ...

TeX

TeX has an idiosyncratic version numbering system. Since version 3, updates have been indicated by adding an extra digit at the end, so that the version number asymptotically approaches π. The current version is 3.141592. This is a reflection of the fact that TeX is now very stable, and only minor updates are anticipated. TeX developer Donald Knuth has stated that the "absolutely final change (to be made after my death)" will be to change the version number to π, at which point all remaining bugs will become permanent features. , (IPA: ) written as TeX in plain text, is a typesetting system created by Donald Knuth. ... An asymptote is a straight line or curve which a curve approaches as one moves along the curve. ... Lower-case Ï€ (the lower case letter is used for the constant) When a circles diameter is 1, its circumference is Ï€. The mathematical constant Ï€ is an irrational real number, approximately equal to 3. ... Donald Knuth at a reception for the Open Content Alliance. ...

[edit]

Apple

Apple has a formalised version number structure based around the NumVersion struct, which specifies a one- or two-digit major version, a one-digit minor version, a one-digit 'bug' (i.e. revision) version, a stage indicator (drawn from the set development/prealpha, alpha, beta and final/release), and a one-byte (i.e. having values in the range 0-255) pre-release version, which is only used at stages prior to final. In writing these version numbers as strings, the convention is to omit any parts after the minor version whose value are zero (with 'final' being considered the zero stage), thus writing 1.0.2b12, 1.0.2 (rather than 1.0.2f0), and 1.1 (rather than 1.1.0f0).

[edit]

Other schemes

Some software producers use different schemes to denote releases of their software. For example, the Microsoft Windows operating system was first labelled with standard numerical version numbers (Windows 1.0 through Windows 3.11), then by years (Windows 95, Windows 98, Windows 2000), and also by alphanumeric codes (Windows Me, Windows XP). The Debian project uses a major/minor versioning scheme for releases of its operating system, but uses code names from the movie Toy Story during development to refer to stable, unstable and testing releases. The Ubuntu GNU/Linux distribution uses the two digit year number followed by the month (4.10, 5.04, 5.10, and 6.06). The best music that always ideal samples solution says aren't . Free doctor drugs her so gave samples the some . A lot 800. $2 that reach best girls never know to the people "it's important will of. 2004 sex patient assistance (paps) pharmaceutical programs drugs Microsoft Windows is a family of operating systems by Microsoft. ... Windows 1. ... The Windows 3. ... Windows 95 is a consumer-oriented graphical user interface-based operating system. ... Windows 98 (codenamed Memphis) is a graphical operating system released on June 25, 1998 by Microsoft. ... Windows 2000 (also referred to as Win2K or W2K) is a preemptible and interruptible, graphical, business-oriented operating system that is designed to work with either uniprocessor or symmetric multi-processor (SMP) 32-bit Intel x86 computers. ... Windows Me (originally codenamed Millennium), also known as Windows Millennium Edition, is a 16-bit/32-bit graphical operating system released on September 14, 2000 by Microsoft. ... Windows XP is a line of operating systems developed by Microsoft for use on general-purpose computer systems, including home and business desktops, notebook computers, and media centers. ... Debian, organized by the Debian Project, is a widely used distribution of free software developed through the collaboration of volunteers from around the world. ... Toy Story is a computer-generated imagery (CGI) animation film produced by Pixar Animation Studios and released by Walt Disney Pictures and Buena Vista Distribution in the United States on November 22, 1995, and the United Kingdom on 22 March 1996. ...


in and from companies. generic.

[edit]

Internal version numbers

Software may have an "internal" version number which differs from the version number shown in the product name (and which typically follows version numbering rules more consistently). J2SE 5.0, for example, has the internal version number of 1.5.0, and versions of Windows from 95 on have continued the standard numerical versions internally: Windows 95 is Windows 4.0, 98 is 4.10, 2000 is (NT) 5.0, Me is 4.9, XP is (NT) 5.1, 2003 is (NT) 5.2, and Vista is (NT) 6.0. Java 2 Platform, Standard Edition or J2SE is a collection of java Application Programming Interfaces targeting Java platform applications running on a workstation. ... Windows 95 is a consumer-oriented graphical user interface-based operating system. ... Windows 98 (codenamed Memphis) is a graphical operating system released on June 25, 1998 by Microsoft. ... Windows 2000 (also referred to as Win2K or W2K) is a preemptible and interruptible, graphical, business-oriented operating system that is designed to work with either uniprocessor or symmetric multi-processor (SMP) 32-bit Intel x86 computers. ... Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ... Windows Me (originally codenamed Millennium), also known as Windows Millennium Edition, is a 16-bit/32-bit graphical operating system released on September 14, 2000 by Microsoft. ... Windows XP is a line of operating systems developed by Microsoft for use on general-purpose computer systems, including home and business desktops, notebook computers, and media centers. ... Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ... Windows Server 2003 is a server operating system produced by Microsoft. ... Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ... Windows Vista is the new title for the next generation of Microsoft Windows, a commercial graphical operating system used on personal computers, including home and business desktops, notebook computers, and media centers. ... Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ...

[edit]

Pre-release versions

In conjunction with the various versioning schemes listed above, a system for denoting pre-release versions is generally used. Programs that are in a very early stage of development are often called "alpha" software, after the first letter in the Greek alphabet. After they mature but are not yet ready for release, they may be called "beta" software, after the second letter in the Greek alphabet. Alpha- and beta-version software is often given numerical versions less than 1 (such as 0.9), to suggest their approach toward a public "1.0" release. However, if the pre-release version is for an existing software package (e.g. version 2.5), then an "a" or "alpha" may be appended to the version number. So the alpha version of the 2.5 release might be identified as 2.5a or 2.5.a. Software packages which are soon to be released as a particular version may carry that version tag followed by "rc-#", indicating the number of the release candidate. When the version is actually released, the "rc" tag disappears. Software development stages Development stage terminology expresses how the development of a piece of software has progressed and how much further development it may require. ...

[edit]

Modifications to the numeric system

[edit]

Odd-numbered versions for development releases

Up until the 2.6.x series, Linux used odd minor version numbers to denote development releases and even minor version numbers to denote stable releases. For example, Linux 2.3 was a development family of the second major design of the Linux kernel, and Linux 2.4 was the stable release family that Linux 2.3 matured into. After the minor version number in the Linux kernel is the release number, in ascending order; for example, Linux 2.4.0 → Linux 2.4.22. Even further, a trivial version number was added to 2.6.8, making 2.6.8.1 which denoted a very minor change. This fourth number has been made standard since 2.6.11.1. Linux (also known as GNU/Linux) is a Unix-like computer operating system. ... Odd has several meanings. ... In mathematics, the term even is used in several senses: an integer is called even if it is divisible by two; see even and odd numbers a function f defined on the real numbers is called even if f(x) = f(−x) for all x; see even and odd functions...

[edit]

Apple Computer

Apple had their own twist on this habit during the era of the classic MacOS: although there were minor releases, they rarely went beyond 1, and when they did, they twice jumped straight to 5, suggesting a change of magnitude intermediate between a major and minor release (thus, 8.5 really means 'eight and a half', and 8.6 is 'eight and a half point one'). The complete sequence of versions (neglecting revision releases) is 1.0, 1.1, 2.0, 2.1, 3.0, 3.2 (skipping 3.1), 4.0, 4.1, 5.0, 5.1, 6.0, 7.0, 7.1, 7.2, 7.5, 7.6, 8.0, 8.1, 8.5, 8.6, 9.0, 9.1, 9.2. OS X has bucked this trend, having gone more conventionally from 10.0 to 10.4, one minor release at a time. Logo: Mac OS System 7, 8 and 9 On January 24th, 1984 Apple Computer introduced the Apple Macintosh personal computer, with the Macintosh 128K model, which came bundled with the Mac OS operating system. ... Mac OS X is the newest of Apple Computers Mac OS line of operating systems. ...

[edit]

Political significance of version numbers

[edit]

Version 1.0 as a milestone

Commercial software developers often start at version 1 for the first release of a program and increment the major version number with each rewrite, meaning that a program can reach version 3 within a few months of development, before it's even considered stable or reliable.


In contrast to this, the Free Software community tends to use version 1.0 as a major milestone, indicating that the software is "complete", that it has all major features, and is considered reliable enough for general release. This article is about free software as defined by the sociopolitical free software movement; for information on software distributed without charge, see freeware. ...


In this scheme, the version number slowly approaches 1.0 as more and more bugs are fixed in preparation for the 1.0 release.The developers of MAME do not intend to release a version 1.0 of their emulator program. The argument is that it will never be truly "finished" because there will always be more arcade games. Version 0.99 was simply followed by version 0.100, even though 0.100 is a smaller decimal number than 0.99. MAME is a computer software program for personal computers designed to faithfully and precisely emulate as many arcade games as possible, with the intent of preserving gaming history and preventing vintage games from being lost or forgotten. ... Centipede by Atari is a typical example of a 1980s era arcade game. ...

[edit]

To describe program history

Winamp released an entirely different architecture for version 3 of the program. Due to lack of backwards compatibility with plugins and other resources from the major version 2, a new version was issued that was compatible with both version 2 and 3. The new version was set to 5 (2+3), jumping version 4. Winamp is a multimedia player made by Nullsoft and eventually acquired by America Online. ... In technology, especially computing, a product is said to be backward compatible (or downward compatible) when it is able to take the place of an older product, by interoperating with other products that were designed for the older product. ...

[edit]

Keeping up with competitors

There is a common habit in the commercial software industry (usually, though not always, spurned by non-commercial programmers) to make major jumps in numeric major or minor version numbers for reasons which do not seem (to many members of the program's audience) to merit them: "marketing" version numbers.


This can be seen in several Microsoft products, as well as Sun Solaris and Java Virtual Machine numbering, SCO Unix version numbers, and Corel Word Perfect, as well as the filePro DB/RAD programming package, which went from 2.0 to 3.0 to 4.0 to 4.1 to 4.5 to 4.8 to 5.0, and is about to go to 5.6, with no intervening release. A slightly different version can be seen in AOL's PC client software, which tends to have only major releases (5.0, 6.0, 7.0, etc.). Likewise, Microsoft Access jumped from version 2.0 to version 7.0, to match the version number of Microsoft Word. Look up Rad in Wiktionary, the free dictionary. ... Microsoft Access (full name Microsoft Office Access) is a relational database management system from Microsoft, packaged with Microsoft Office Professional which combines the relational Microsoft Jet Database Engine with a graphical user interface. ... Microsoft Word, or Microsoft Office Word, is Microsofts flagship word processing software. ...


Sun's Java has had the versions: Java is an object-oriented programming language developed by James Gosling and colleagues at Sun Microsystems in the early 1990s. ...

  • JDK 1.0.3
  • JDK 1.1.2 through 1.1.8
  • J2SE 1.2.0 through 1.4.2
  • J2SE 5.0
[edit]

Overcoming perceived marketing difficulties

In the mid-1990s, the rapidly growing CMMS, Maximo, moved from Maximo Series 3 directly to Series 5, skipping Series 4 due to that number's perceived marketing difficulties in the Chinese market, where pronunciation of the number 4 in Chinese rhymes with “death” or “failure”. This did not, however, stop Maximo Series 5 version 4.0 being released. (It should be noted the "Series" versioning has since been dropped, effectively resetting version numbers after Series 5 version 1.0's release.) Computerized Maintenance Management System (CMMS) is also known as Enterprise Asset Management. ... Work order maintenance system that runs on a number of databases such as Oracle or SQL Server. ...

[edit]

Significance in software engineering

Version numbers are used in practical terms by the consumer, or client, by being able to compare their copy of the software product against another copy, such as the newest version released by the developer. For the programmer team or company, versioning is often used on a file-by-file basis, where individual parts or sectors of the software code are compared and contrasted with newer or older revisions, often in a collaborative Concurrent Versions System. There is no absolute and definite software version schema; it can often vary from software genre to genre, and is very commonly based on the programmer's personal preference. Consumers are individuals or households that consume goods and services generated within the economy. ... The Concurrent Versions System (CVS), also known as the Concurrent Versioning System, implements a version control system: it keeps track of all work and all changes in a set of files, typically the implementation of a software project, and allows several (potentially widely separated) developers to collaborate. ...

[edit]

Significance in technical support

Probably the most important, and most overlooked, usage of version numbers, is to permit people providing support to users of a program to ascertain exactly what code a user is running, so that they know what known bugs might affect a problem, and the like. This occurs when a program has a substantial user community, especially when that community is large enough that the people providing technical support are not the people who wrote the code.

[edit]

Version numbers for files and documents

Some computer file systems, such as the OpenVMS Filesystem, also keep versions for files. In computing, a file system is a method for storing and organizing computer files and the data they contain to make it easy to find and access them. ... Files-11, also known as on-disk structure, is the filesystem used by Hewlett-Packards OpenVMS operating system, and also (in a simpler form) by the older RSX-11. ...


Versioning amongst documents is relatively similar to the routine used with computers and software engineering, where with each small change in the structure, contents, or conditions, the version number is incremented by 1, or a smaller or larger value, again depending on the personal preference of the author and the size or importance of changes made. An author is the person who creates a written work, such as a book, story, article or the like. ...

[edit]

Mathematical properties of version numbers

Version numbers very quickly evolve from simple integers (1,2,...) to rational numbers (2.08,2.09,2.10) and then to non-numeric "numbers" such as 4:3.4.3-2. These complex version numbers are therefore better treated as character strings. Operating systems that include package management facilities (such as all non-trivial Linux or BSD distributions) will use a distribution-specific algorithm for comparing version numbers of different software packages. For example, the ordering algorithms of the Red Hat and derived distributions and those of the Debian-like distributions differ. Linux (also known as GNU/Linux) is a Unix-like computer operating system. ... Berkeley Software Distribution (BSD, sometimes called Berkeley Unix) is the Unix derivative distributed by the University of California, Berkeley starting in the 1970s. ...


An ideal ordering algorithm should define a total order on strings. In other words, given two version strings u and v, either u and v should be identical, or u should come before or after v. More formally, if the version comparison algorithm is modeled as a function f(u,v) which returns -1, 0 or 1, the following two properties should hold: In mathematics, a total order, linear order or simple order on a set X is any binary relation on X that is antisymmetric, transitive, and total. ...

  • (A) For all u,v and w, if f(u,v) = -1 and f(v,w) = -1 then f(u,w) = -1 (transitivity),
  • (B) For all u and v, if f(u,v) = f(v,u) then u and v should be equal strings (antisymmetry).

Note that (B) also implies reflexivity. If these two conditions do not hold, then we have one of the two situations: In mathematics, a binary relation R over a set X is transitive if it holds for all a, b, and c in X, that if a is related to b and b is related to c, then a is related to c. ... In mathematics, a binary relation R on a set X is antisymmetric if, for all a and b in X, if a is related to b and b is related to a, then a = b. ... In set theory, a binary relation can have, among other properties, reflexivity or irreflexivity. ...

  • (I) There is a sequence of version numbers v1,...,vk such that v1<v2<...<vk and vk<v1. In other words, we have a circularity in the version numbering scheme. Version numbers are supposed to reflect software evolution and circularities can wreak havoc with package management systems.
  • (II) There exist two different strings u and v such that u and v are equivalent as version numbers.

For instance, in Debian, leading zeroes are ignored in chunks, so that 5.0005 and 5.5 are considered as equal, and 5.5<5.0006. This can confuse users; string-matching tools may fail to find a given version number ; and this can cause subtle bugs in package management if the programmers use string-indexed data structures such as version-number indexed hash tables. Debian, organized by the Debian Project, is a widely used distribution of free software developed through the collaboration of volunteers from around the world. ...


Note that the ordering of version numbers needs neither be well-founded nor non-Archimedean. The former condition would forbid infinite descending sequences of version numbers. As we live in a finite world, this has no consequence, and in practice, the empty string is usually the minimum of the ordering. The latter would mean that there is always a finite number of versions between two given version numbers. If version strings are unlimited in length, this would mean that it is always possible to insert a new version between two existing versions, which is a desirable feature. It is common for each component of a version number to be treated individually, so that 1.9 need not be followed by 2.0, but by 1.10; it is, as noted above, not safe to assume that mathematical operations can safely be applied to a given version number merely because its representation appears to be that of a real number. In mathematics, a well-founded relation is an order relation R on a set X where every non-empty subset of X has an R-minimal element; that is, where for every non-empty subset S of X, there is an element m of S such that for every element... Archimedean refers to a thing named after the Greek mathematician Archimedes. ...

[edit]

See also

[edit]

Revision control (also known as Version control) is the management of multiple revisions of the same unit of information. ... The conditions a product is sold under will change over time. ... Software Engineering (SE) is the discipline of designing, creating, and maintaining software by applying technologies and practices from computer science, project management, engineering, application domains and other fields. ... Open source refers to projects that are open to the public and which draw on other projects that are freely available to the general public. ...

External links

  • Windows Version Numbers
  • TN 1132 - Version Territory, the Apple technical note specifying the use of the NumVersion scheme

  Results from FactBites:
 
Revision control - Wikipedia, the free encyclopedia (1375 words)
As software is developed and deployed, it is extremely common for multiple versions of the same software to be deployed in different sites, and for the software's developers to be working privately on updates.
Bugs and other issues with software are often only present in certain versions (because of the fixing of some problems and the introduction of others as the program evolves).
Therefore, for the purposes of locating and fixing bugs, it is vitally important for the debugger to be able to retrieve and run different versions of the software to determine in which version(s) the problem occurs.
RFC 3253 (rfc3253) - Versioning Extensions to WebDAV (Web Distributed Auth (14513 words)
Although the versioning extensions are designed to be orthogonal to most aspects of the WebDAV and HTTP protocols, a clarification to RFC 2518 is required for effective interoperable versioning.
Version Name A "version name" is a string chosen by the server to distinguish one version of a version history from the other versions of that version history.
Since the version-controlled resource and the version resource are separate, distinct resources, when a method is applied to a version-controlled resource, it is only applied to that version-controlled resource, and is not applied to the version resource that is currently identified by the DAV:checked-in property of that version-controlled resource.
  More results at FactBites »


 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.