Complete redesign of Subsurface version numbers

- for now all versions start with v6.0
- CICD builds use the monolithic build number as patch level, e.g. v6.0.12345
- local builds use the following algorithm
  - find the newest commit with a CICD build number that is included in the
    working tree
  - count the number of commits in the working tree since that commit
  - if there are no commits since the last CICD build, the local build version
    will be v6.0.12345-local
  - if there are N commits since the last CICD build, it will be
    v6.0.12345-N-local
- test builds in the CICD that don't create artifacts simply use a dummy release
  in order to not incorrectly increment the build number and also not to waste
  time and resources by manually checking out the nightly-build repo for each of
  these builds.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2024-01-04 20:44:31 -08:00
parent 8a2dd8db74
commit 62477d8c65
24 changed files with 295 additions and 126 deletions

View file

@ -1,9 +1,10 @@
// SPDX-License-Identifier: GPL-2.0
#include "ssrf-version.h"
// let's leave the two redundant functions in case we change our minds on git SHAs
const char *subsurface_git_version(void)
{
return GIT_VERSION_STRING;
return CANONICAL_VERSION_STRING_4;
}
const char *subsurface_canonical_version(void)