Glibc stable release process (Glibc 2.26.1)

Paul Eggert eggert@cs.ucla.edu
Sat Sep 30 00:26:00 GMT 2017


Romain Naour wrote:
> Maybe a middle ground is that a tag is pushed to the repository, just to
> identify a specific sha1 as "this is 2.26.1". This is relatively lightweight (a
> signed tag) and gives downstream users that need it a clear identification of a
> blessed version.
That "blessing" would be problematic. How can we be expected to "bless" any 
particular commit unless we've checked it? And that checking will take some 
work, work that will slow us down on other things.

Instead of blessing, how about using the output of something like the following 
shell command to generate the version number?

git describe --match 'glibc-*' --abbrev=7 --dirty

This will generate a string that identifies the commit but is shorter and easier 
to read than an SHA hash, and so is more likely to give users that warm and 
fuzzy feeling. On my glibc repository right now, for example, it generates:

glibc-2.26-415-g4d3693e

which means there have been 415 commits since 2.26, and the latest commit can be 
abbreviated 4d3693e. A similar (but shorter) version-numbering scheme is used by 
GNU Coreutils and other GNU packages when between releases, and Gnulib has a 
script build-aux/git-version-gen that can generate it.



More information about the Libc-alpha mailing list