summaryrefslogtreecommitdiff
path: root/release.txt
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2018-05-31 10:47:09 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2018-05-31 10:47:09 +0200
commit8c0edc11af4a9b75573f7d31eb44fd0e54e11499 (patch)
tree3261ce02f3411f3c31f23e8104efcdccd744d3c4 /release.txt
parent9265eb256d6ee7074d33954c5466e5b6697f8fc8 (diff)
Update for 0.7.0 release0.7.0
Diffstat (limited to 'release.txt')
-rw-r--r--release.txt101
1 files changed, 52 insertions, 49 deletions
diff --git a/release.txt b/release.txt
index 436ef92..8a84b20 100644
--- a/release.txt
+++ b/release.txt
@@ -2,13 +2,18 @@
- Add new bot machines/configurations/options from stage to queue to public
-- Replace 0.6.0 and 0.6 in this document with the new version.
+ @@ See paper in Build OS filder.
+
+ @@ Might have to be done at release if things are incompatible. Maybe
+ better/cleaner to always do this at release.
+
+- Replace 0.7.0 and 0.7 in this document with the new version.
- Remove etc/ and private/ from modules in etc/git/modules to reduce
noise during stat. Also, review for any new modules.
- Review '@@' items [private/ excluded, update with new modules, at least
- look for @@ TMP]
+ look for @@ TMP; also check the review script for any new modules]:
etc/review | less -R
@@ -35,7 +40,8 @@
- Make sure all the bot builds are successful (drop build db).
- Test bootstrap build2-toolchain using scripts/batch files (bot builds
- are using makefile). Need to test build.sh, build-*.bat.
+ are using makefile). Need to test build.sh, build-*.bat. Now test via
+ automated install files: see private/install/testing.txt for details.
- Update NEWS files in all project that will have non-pre-release version.
@@ -46,10 +52,10 @@
- Install guide for (for 1 & 2).
- - Introduction for (for 1 & 2). Use intro script to get output but watch
- out for stage (grep afterwards):
+ - Introduction for (for 1 & 2). Use intro script to get output:
- etc/intro -s -p https://hello.stage.build2.org/1
+ ./intro2-tldr 2>&1 | tee intro2-tldr.out
+ ./intro2-tour 2>&1 | tee intro2-tour.out
- Change to final versions for all packages being released, some by hand,
some with version scripts (see etc/stage for list + msvc-linux).
@@ -106,6 +112,8 @@
- check /0/ and /1/ for anything stray
+ @@ Add extra packages (cli, libcutl, mysql/mariadb).
+
- Make sure bot builds are successful
- Upgrade brep on build2.org (hello) using queue
@@ -131,6 +139,8 @@
etc/stage -p
+ @@ Remove *-queue install scripts.
+
- Move packages (manually for now):
- old/replaced/FTB packages either to legacy or delete
@@ -141,7 +151,7 @@
cd cppget.org
git -C repository add .
- git -C repository status
+ git -C repository status # Review changes.
./update
- Disable the queue toolchain on bbots (moved packages from queue/),
@@ -158,12 +168,14 @@
- Make sure bot builds are successful, drop hello build database again.
+ @@ First test automated install scripts.
+
- Release
- Update submodules (style/) in private/.
- - Write release notes, use placeholder for announcement URL. Add link from
- the doc page.
+ - Write release notes, use placeholder for announcement URL (or guess).
+ Add link from the doc page.
- Any new FAQ entries or any other updates (main page, etc)? Any new
documentation to link from the doc page?
@@ -172,6 +184,10 @@
cat `ls -1 *.sha256`
+ - Update install page.
+
+ cat toolchain.sha256
+
- Regenerate documentation (./cli.sh) for all hosts.
- Test locally, publish, test production
@@ -188,40 +204,48 @@
- Add reply-to: header for users@ announcement.
- - Patch the announcement URL in release notes, re-publish.
+ - Patch/verify the announcement URL in release notes, re-publish.
- Announce on reddit and other places (see doc/ann/).
- - Commit and tag private/
+ - Commit and tag private/ and style/
- git tag -a 0.6.0 -m "Tag version 0.6.0" && git push --tags
+ git tag -a 0.7.0 -m "Tag version 0.7.0" && git push --follow-tags
- Tag & Commit hello
- - commit hello/repository/ (see commit history for procedure)
-
cd hello
./foreach-git stat
- ./foreach-git -x libhello-1.0 tag -a build2-0.6.0 -m "Tag for build2 version 0.6.0"
- git -C libhello-1.0 tag -a 1.0/build2-0.6.0 -m "Tag for build2 version 0.6.0"
- ./foreach-git push --tags
+ - commit hello/repository/ (see commit history for procedure)
+
+ git tag -a build2-0.7.0 -m "Tag for build2 version 0.7.0" && git push --follow-tags
+
- Tag & Commit
- - commit cppget.org/repository/ (see commit history for procedure)
+ - commit & push cppget.org/repository/ (see commit history for procedure;
+ commit big chunks first, then reorder with rebase).
- Tag and push all released packages, some by hand, some with tag scripts
- (see etc/stage for list).
+ (see etc/stage for list but also packages added ad hoc with etc/stage-pkg).
+
+ @@ Use vX.Y.Z tag for packages that are bpkg/bdep-ready (i.e., have
+ suitable repositories.manifest if required).
cd <proj>
+ # X.Y.Z
v="$(sed -n -re 's/version: ([^ ]+)/\1/p' manifest)"; echo $v; read; \
- git tag -a $v -m "Tag version $v" && git push --tags
+ git tag -a $v -m "Tag version $v" && git push --follow-tags
+
+ # vX.Y.Z
+ v="$(sed -n -re 's/version: ([^ ]+)/\1/p' manifest)"; echo v$v; read; \
+ git tag -a v$v -m "Tag version $v" && git push --follow-tags
For build2 projects, review tag_modules in etc/git/modules, then:
- ./tag.sh 0.6.0
+ ./tag.sh 0.7.0
./push.sh
- Increment versions and open master for business
@@ -245,36 +269,14 @@
~ rebuild ODB compiler
- b '{clean update}(build2/ libbutl/)'
-
- cd ../odb/builds/default/
- b update # errors are ok
- b update
-
- b clean libbpkg/
- cd bpkg/bpkg
- b clean
- b --match-only # errors are ok
- ./odb.sh
- cd ..
- b
-
- cd brep
- b clean
- b --match-only # errors are ok
- cd libbrep
- b hxx{version}
- ./odb.sh
- cd ..
- b
-
- ~ the rest is like in local test above
+ @@ bdep sync -fura
+ @@ b hxx{version} # first lib*, then projects, then odb.sh
- Update/test local (see early steps of this list).
- Make symlinks for new version in baseutils (for both baseutils and mingw,
the idea is that we will start with those and maybe upgrade during
- development). Update version file.
+ development).
- Restage
@@ -293,8 +295,9 @@
- Commit and tag
- git tag -a 0.6.0 -m "Tag version 0.6.0" && git push --tags
+ git tag -a 0.7.0 -m "Tag version 0.7.0" && git push --follow-tags
-- Snapshot buildos-5 subvolume as buildos-5-0.6.0
+- Snapshot buildos subvolumes as buildos-0.7.0
- btrfs subvolume snapshot buildos-5 buildos-5-0.6.0
+ btrfs subvolume snapshot buildos-3 buildos-3-0.7.0
+ btrfs subvolume snapshot buildos-6 buildos-6-0.7.0