Annotation of embedaddon/curl/docs/VERSIONS, revision 1.1.1.1
1.1 misho 1: Version Numbers and Releases
2: ============================
3:
4: Curl is not only curl. Curl is also libcurl. They're actually individually
5: versioned, but they mostly follow each other rather closely.
6:
7: The version numbering is always built up using the same system:
8:
9: X.Y.Z
10:
11: - X is main version number
12: - Y is release number
13: - Z is patch number
14:
15: ## Bumping numbers
16:
17: One of these numbers will get bumped in each new release. The numbers to the
18: right of a bumped number will be reset to zero. If Z is zero, it may not be
19: included in the version number.
20:
21: The main version number will get bumped when *really* big, world colliding
22: changes are made. The release number is bumped when changes are performed or
23: things/features are added. The patch number is bumped when the changes are
24: mere bugfixes.
25:
26: It means that after release 1.2.3, we can release 2.0 if something really big
27: has been made, 1.3 if not that big changes were made or 1.2.4 if mostly bugs
28: were fixed.
29:
30: Bumping, as in increasing the number with 1, is unconditionally only
31: affecting one of the numbers (except the ones to the right of it, that may be
32: set to zero). 1 becomes 2, 3 becomes 4, 9 becomes 10, 88 becomes 89 and 99
33: becomes 100. So, after 1.2.9 comes 1.2.10. After 3.99.3, 3.100 might come.
34:
35: All original curl source release archives are named according to the libcurl
36: version (not according to the curl client version that, as said before, might
37: differ).
38:
39: As a service to any application that might want to support new libcurl
40: features while still being able to build with older versions, all releases
41: have the libcurl version stored in the curl/curlver.h file using a static
42: numbering scheme that can be used for comparison. The version number is
43: defined as:
44:
45: #define LIBCURL_VERSION_NUM 0xXXYYZZ
46:
47: Where XX, YY and ZZ are the main version, release and patch numbers in
48: hexadecimal. All three number fields are always represented using two digits
49: (eight bits each). 1.2 would appear as "0x010200" while version 9.11.7
50: appears as "0x090b07".
51:
52: This 6-digit hexadecimal number is always a greater number in a more recent
53: release. It makes comparisons with greater than and less than work.
54:
55: This number is also available as three separate defines:
56: `LIBCURL_VERSION_MAJOR`, `LIBCURL_VERSION_MINOR` and `LIBCURL_VERSION_PATCH`.
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>