Skip to content

Commit 0fc3911

Browse files
committed
remove guideline for setting Libtool ABI version
1 parent 79f8c43 commit 0fc3911

File tree

1 file changed

+3
-28
lines changed

1 file changed

+3
-28
lines changed

darshan-test/RELEASE-CHECKLIST.txt

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Notes on how to release a new version of Darshan
1313
4) update the Changelog, if needed (browse git log since last release)
1414
- commit
1515
5) update version number in top-level darshan.version file
16-
- See below for the guide line of setting the version number.
16+
- See below for the guideline of setting the version number.
1717
- commit
1818
6) follow checklist for corresponding release of PyDarshan
1919
- found at darshan-util/pydarshan/RELEASE-CHECKLIST-PyDarshan.txt
@@ -54,39 +54,14 @@ Notes on how to release a new version of Darshan
5454
----
5555
## Setting the release version number
5656

57-
There are two versions that must be set when making a new release:
58-
software semantic version and libtool ABI version.
57+
Follow the guideline provided by [Semantic Versioning](https://semver.org)
58+
when setting the version number for new releases.
5959

6060
* Software Semantic Versioning
61-
+ https://semver.org
6261
+ A version number is in a form of MAJOR.MINOR.PATCH
6362
1. MAJOR version when you make incompatible API changes
6463
2. MINOR version when you add functionality in a backward compatible manner
6564
3. PATCH version when you make backward compatible bug fixes
6665
+ A pre-release version MAY be denoted by appending a hyphen, for example,
6766
1.0.0-alpha.
6867

69-
* GNU Libtool's ABI versioning
70-
+ http://www.gnu.org/software/libtool/manual/libtool.html#Updating-version-info
71-
+ A version number is in a form of current.revision.age
72-
1. "current (c)" is the most recent interface number that this library
73-
implements. A change in this number typically indicates a
74-
backward-incompatible ABI change.
75-
2. "revision (r)" is the implementation number of the current interface.
76-
Tracks changes in the library's source code without affecting the ABI.
77-
3. "age (a)" is the difference between the newest and oldest interfaces that
78-
this library implements. It indicates the number of interfaces added
79-
since the last current increment.
80-
+ Rules for Updating Version Information:
81-
* Initial State: Begin with 0:0:0 for new libraries.
82-
* Release-based Updates: Update versions only before a public release.
83-
* Source Code Changes: Increment "revision" if the source code has changed
84-
since the last update, even without interface changes.
85-
(c:r:a becomes c:r+1:a)
86-
* Interface Changes (Addition/Removal/Modification): Increment "current" and
87-
reset "revision" to 0 if any interfaces have been added, removed, or changed.
88-
* Interface Additions: Increment "age" if new interfaces have been added since
89-
the last public release.
90-
* Interface Removals: Reset "age" to 0 if any interfaces have been removed
91-
since the last public release.
92-

0 commit comments

Comments
 (0)