From b072a0bdc343d1c1de879979aa56aa8b7cffa499 Mon Sep 17 00:00:00 2001 From: Graham Nelson Date: Sun, 21 Aug 2022 13:09:18 +0100 Subject: [PATCH] Added release notes --- README.md | 5 ++++- build.txt | 4 ++-- notes/release/2-1-0.md | 7 +++++++ notes/version_history.md | 11 +++++++++++ notes/versioning.md | 27 +++++++++++++++++++++++++++ scripts/intest.rmscript | 5 ++++- 6 files changed, 55 insertions(+), 4 deletions(-) create mode 100644 notes/release/2-1-0.md create mode 100644 notes/version_history.md create mode 100644 notes/versioning.md diff --git a/README.md b/README.md index 59a44ca..2fceb48 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Intest 2.1.0 -v2.1.0-beta+1A39 'The Remembering' (22 June 2022) +[Version](notes/versioning.md): 2.1.0-beta+1A40 'The Remembering' (21 August 2022) ## About Intest @@ -33,6 +33,9 @@ This is in order that there can be clear ownership. ## Build Instructions +**Caution**: The `main` branch of this repository generally holds "unstable", that is, +unreleased work-in-progress versions of Intest. See [notes/versioning.md](notes/versioning.md). + Make a directory in which to work: let's call this "work". Then: * Change the current directory to this: "cd work" diff --git a/build.txt b/build.txt index 2d0183a..2c057c4 100644 --- a/build.txt +++ b/build.txt @@ -1,3 +1,3 @@ Prerelease: beta -Build Date: 22 June 2022 -Build Number: 1A39 +Build Date: 21 August 2022 +Build Number: 1A40 diff --git a/notes/release/2-1-0.md b/notes/release/2-1-0.md new file mode 100644 index 0000000..8ccce18 --- /dev/null +++ b/notes/release/2-1-0.md @@ -0,0 +1,7 @@ +# Release notes for Intest v2.1.0 + +This release was made in August 2022, and was the first proper release for major +version 2. This release is the baseline for Intest release notes from here on. +
+ +Return to the [table of Intest release notes here](../version_history.md). diff --git a/notes/version_history.md b/notes/version_history.md new file mode 100644 index 0000000..916bfd5 --- /dev/null +++ b/notes/version_history.md @@ -0,0 +1,11 @@ +# Version history + +See [versioning](versioning.md) for details of Intest's version numbering. + +Links in the following table are to the archive of release notes, which +covers only the open-source era of Intest. (Version 1, code-named "The Revealing +Science of God", was written in Perl in 2006 and was very different.) + +Version | Build | Date | Highlights +--------------------------- | ----- | -------------- | ---------- +[2.1.0](release/2-1-0.md) | 1A40 | August 2022 | First open-source release diff --git a/notes/versioning.md b/notes/versioning.md new file mode 100644 index 0000000..38a4d8c --- /dev/null +++ b/notes/versioning.md @@ -0,0 +1,27 @@ +# Branching and versioning policy + +## Version numbers for Intest + +Intest is developed in public. Command-line users comfortable with git can always get the very latest state. But that potentially means endless different versions of Intest out there in the wild. To clarify this situation, all versions are numbered, and we will distinguish between "release" versions, which are ready for public use, and "unstable" versions, which are not. + +"Release" versions have simple version numbers in the shape `X.Y.Z`: for example, `2.1.0`. + +"Unstable" versions are commits of the software between releases. These have much longer version numbers, containing an `-alpha` or `-beta` warning. For example, `2.1.0-beta+1B14`. (The `+1B14` is a daily build number, also only +present on version numbers of unstable versions.) + +Note that `intest -version` prints out the full version number of the core +source it was compiled from. This one is clearly unstable: + + $ intest/Tangled/intest -version + intest version 2.1.0-beta+1A38 'The Remembering' (31 May 2022) + +(It is now unclear why major versions of Intest are named after [the movements of Tales from Topographic Oceans](https://en.wikipedia.org/wiki/Tales_from_Topographic_Oceans). +But such is life, and major version 3 will have to be called "The Ancient".) + +Release notes for releases since 2022 can be found [here](version_history.md). + +## Branching + +In the core Intest repository, active development is on the `master` branch, at least for now. That will always be a version which is unstable. All releases will be made from short branches off of `master`. For example, there will soon be a branch called `r2.1`. This will contain as few commits as possible, ideally just one, which would be the actual release version of 2.1.0. But if there are then point updates with bug fixes, say 2.1.1, 2.1.2, and so on, those would be further commits to the `r2.1` branch. Later, another short branch from `master` would be `r2.2`. + +Releases will be tagged with their version numbers, so the commit representing 2.1.0 will be tagged `v2.1.0`. These will be presented under Releases in the usual Github way, from the column on the right-hand side of the home page. We expect to provide the app installers as associated binary files on those releases, though that won't be the only place they are available. diff --git a/scripts/intest.rmscript b/scripts/intest.rmscript index 8de67af..3ae0471 100644 --- a/scripts/intest.rmscript +++ b/scripts/intest.rmscript @@ -1,6 +1,6 @@ # Intest {bibliographic datum: Version Number of: intest} -v{bibliographic datum: Semantic Version Number of: intest} '{bibliographic datum: Version Name of: intest}' ({bibliographic datum: Build Date of: intest}) +[Version](notes/versioning.md): {bibliographic datum: Semantic Version Number of: intest} '{bibliographic datum: Version Name of: intest}' ({bibliographic datum: Build Date of: intest}) ## About Intest @@ -37,6 +37,9 @@ This is in order that there can be clear ownership. ## Build Instructions +**Caution**: The `main` branch of this repository generally holds "unstable", that is, +unreleased work-in-progress versions of Intest. See [notes/versioning.md](notes/versioning.md). + Make a directory in which to work: let's call this "work". Then: * Change the current directory to this: "cd work"