Versions and Releases
The D compiler labels sets of types, variables, functions, constants, and translators
corresponding to a particular software release using a version string. A version string
is a period-delimited sequence of decimal integers of the form “x” (a
Major release), “x.y” (a Minor release), or “x.y.z” (a Micro release). Versions
are compared by comparing the integers from left to right. If the
leftmost integers are not equal, the string with the greater integer is
the greater (and therefore more recent) version. If the leftmost integers are
equal, the comparison proceeds to the next integer in order from left
to right to determine the result. All unspecified integers in a version
string are interpreted as having the value zero during a version comparison.
The DTrace version strings correspond to Sun's standard nomenclature for interface versions,
as described in attributes(5). A change in the D programming interface is
accompanied by a new version string. The following table summarizes the version
strings used by DTrace and the likely significance of the corresponding DTrace
software release.
Table 41-1 DTrace Release Versions
Release |
Version |
Significance |
Major |
x.0 |
A Major release is likely to contain major feature additions; adhere
to different, possibly incompatible Standard revisions; and though unlikely, could change, drop,
or replace Standard or Stable interfaces (see Chapter 39, Stability). The initial version of
the D programming interface is labeled as version 1.0. |
Minor |
x.y |
Compared to an x.0
or earlier version (where y is not equal to zero), a new
Minor release is likely to contain minor feature additions, compatible Standard and
Stable interfaces, possibly incompatible Evolving interfaces, or likely incompatible Unstable interfaces. These
changes may include new built-in D types, variables, functions, constants, and translators.
In addition, a Minor release may remove support for interfaces previously labeled
as Obsolete (see Chapter 39, Stability). |
Micro |
x.y.z |
Micro releases are intended to be interface compatible with
the previous release (where z is not equal to zero), but are
likely to include bug fixes, performance enhancements, and support for additional hardware. |
In general, each new version of the D programming interface will provide
a superset of the capabilities offered by the previous version, with the
exception of any Obsolete interfaces that have been removed.