Script the project version bump for sprint opening

Table of Contents

This page is a capture in the inbox bucket of the product backlog — a pre-sprint idea, not yet pulled into a sprint as a story.

What

(One paragraph: the idea.)

Why

(Motivation, problem being solved, related context.)

References

See also

Prototype source

Used for the 0.0.19 -> 0.0.20 bump at sprint 20 opening:

from pathlib import Path


def sub(path, old, new):
    p = Path(path)
    s = p.read_text(encoding="utf-8")
    assert old in s, f"{old} not in {path}"
    p.write_text(s.replace(old, new), encoding="utf-8")
    print(f"{path}: {old} -> {new}")


sub("CMakeLists.txt", "VERSION 0.0.19", "VERSION 0.0.20")
sub("vcpkg.json", '"version-string": "0.0.19"', '"version-string": "0.0.20"')
sub(".github/workflows/continuous-linux.yml",
    "orestudio_0.0.19_amd64.deb", "orestudio_0.0.20_amd64.deb")
sub(".github/workflows/continuous-windows.yml",
    "OreStudio-0.0.19-win64.*", "OreStudio-0.0.20-win64.*")
sub(".github/workflows/continuous-macos.yml",
    "OreStudio-0.0.19-Darwin.dmg", "OreStudio-0.0.20-Darwin.dmg")
sub("readme.org", "sprint_19/sprint.html", "sprint_20/sprint.html")
sub("readme.org", "Sprint-19-blue.svg", "Sprint-20-blue.svg")
sub("readme.org", "commits-since/OreStudio/OreStudio/v0.0.18.svg",
    "commits-since/OreStudio/OreStudio/v0.0.19.svg")

Emacs 29.1 (Org mode 9.6.6)