From 0a2931a6945fbbbf5c3497374920310a4e836d84 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 11 Jun 2019 11:35:50 +0200 Subject: Updates for 0.11.0 release --- doc/release.cli | 55 +++++---- intro2-tldr.orig | 41 +++---- intro2-tour.orig | 342 ++++++++++++++++++++++++++++--------------------------- upgrade | 6 +- version | 15 +-- 5 files changed, 246 insertions(+), 213 deletions(-) diff --git a/doc/release.cli b/doc/release.cli index fa208a3..7933e53 100644 --- a/doc/release.cli +++ b/doc/release.cli @@ -31,7 +31,7 @@ and then be queued and published (effectively released) as part of the bundle the release of dependencies with the release of \c{build2} to keep the process as streamlined as possible. -\N|When unbundling the release of a dependency we need to remove its +\N|When unbu ndling the release of a dependency we need to remove its distribution from \c{etc/stage} and add the pre-distributed packages (for example, from \c{public}) to \c{staging/repository/1/}.| @@ -61,7 +61,7 @@ distribution from \c{etc/stage} and add the pre-distributed packages At least look for \c{@@\ TMP} \ - etc/review.sh | grep TMP + etc/review | grep TMP \ \h#review-db|Review database schema changes| @@ -85,21 +85,26 @@ distribution from \c{etc/stage} and add the pre-distributed packages \c{private/build2-packaging.txt}. \N|Maybe this should be done during queuing? Why do we release (but not - publish) these now and other dependencies later?| + publish) these now and other dependencies later? Maybe so that we can + stage them one more time?| \h#dependencies|Finalize all other dependencies| Make sure all other unreleased dependencies listed in \c{etc/stage} are - ready to be released. Effectively, the only remaining step should be to - change the version. + ready to be released (\c{NEWS}, etc). Effectively, the only remaining step + should be to change the version. Do this in the dependency order and finish each off with: \ - git pull && bdep sync -fura && bdep test -ar + git pull + bdep sync -fura && bdep test -ar \ + For some it may make sense to go straight to release; see + \l{#version-release Change to release version}. + \h#upgrade-dep|Upgrade dependencies| @@ -189,7 +194,8 @@ distribution from \c{etc/stage} and add the pre-distributed packages \h#stage-machines|Update \c{stage} \c{buildtab}s and build machines| Review \c{stage} \c{buildtab} for any configurations to drop (for example, - an intermediate version of a compiler). + an intermediate version of a compiler), classes to adjust (\c{legacy}, + \c{default}, \c{latest}, etc). Based on these changes update \c{stage} CI \c{buildtab}, which is a subset of the \c{stage} configurations (and is a base for the \c{queue}/\c{public} @@ -242,6 +248,9 @@ distribution from \c{etc/stage} and add the pre-distributed packages Test \l{https://stage.build2.org/0/ \c{stage} install scripts}, including upgrading, as described in \c{private/install/testing.txt}. + Perform necessary upgrades, if any, and test on ad hoc test machines + (\c{test-*}). + Also test \c{bootstrap-mingw.bat} and \c{bootstrap.sh} (preferably on something less mainstream like FreeBSD) since not exercised as part of install. @@ -276,6 +285,7 @@ distribution from \c{etc/stage} and add the pre-distributed packages versioning/tagging scripts are used: \ + git pull bdep release --no-open --show-push [--alpha|--beta] # review commit git push ... @@ -297,10 +307,11 @@ distribution from \c{etc/stage} and add the pre-distributed packages \li|Change \c{BUILD2_STAGE} in \c{build2/build2/config.hxx.in} to \c{false}.| \li|If necessary, update minimum \c{build2} and \c{bpkg} version - requirements in projects generated by \c{bdep-new}.| + requirements in projects generated by \c{bdep-new}. \b{This must be + done if created projects use new features.}| - \li|Change version by updating (including with new modules) and then - executing: + \li|Change version by updating (including with new modules and/or new + dependencies) and then executing: \ etc/version @@ -423,6 +434,10 @@ distribution from \c{etc/stage} and add the pre-distributed packages git push \ + If queued package manifests contain new values, then the bpkg-rep-publish + script will fail to create repository duu to unknown manifest values. To + resolve this we temporarily add (to \c{crontab}) \c{--ignore-unknow}. + \h#build-public|Verify queued packages build with \c{public}| This makes sure that the new version can be built with the old toolchain. @@ -492,7 +507,8 @@ distribution from \c{etc/stage} and add the pre-distributed packages Adjust \c{stage} and \c{devel} build host configurations to disable the \c{queue} toolchain (comment out). Regenerate affected configurations and - reboot build hosts as on the previous step. + reboot build hosts as on the previous step (or poweroff until stage + reopening). \h1#public|Public| @@ -520,8 +536,8 @@ distribution from \c{etc/stage} and add the pre-distributed packages one for \c{stage}. Comment out the \c{public} toolchain in the build host configuration - (effectively making it a no-toolchain configuration) and power on the new - set of \c{public} build hosts. + (effectively making it a no-toolchain configuration), regenerate, and power + on the new set of \c{public} build hosts. Review deployed machines against the updated \c{public} \c{buildtab} and remove those that are no longer used: @@ -546,8 +562,8 @@ distribution from \c{etc/stage} and add the pre-distributed packages ~/work/build2/buildos/upload-machine .../new-ver .../old-ver \ - Uncomment the \c{public} toolchain in the build host configuration. The - only remaining step is to reboot (not yet): + Uncomment the \c{public} toolchain in the build host configuration and + regenerate. The only remaining step is to reboot (not yet): \ ./po-hosts -r -c public @@ -555,9 +571,9 @@ distribution from \c{etc/stage} and add the pre-distributed packages \h#pub-dist|Publish distribution| - Change \c{BUILD2_REPO} in \c{build2-toolchain} build scripts to \c{public} - and publish the distribution (this also cleans/disables the \c{queue} - toolchain): + Change \c{BUILD2_REPO} in \c{build2-toolchain} build scripts to \c{public}, + commit, and publish the distribution (this also cleans/disables the + \c{queue} toolchain): \ etc/stage -p @@ -574,7 +590,8 @@ distribution from \c{etc/stage} and add the pre-distributed packages push both \c{queue} and \c{public} \c{git} repositories. Note that once published, the existing install instructions/download - links are no longer usable, so do not linger. + links are no longer usable, so do not linger (in fact, may make sense + to update Download and Install pages before publishing packages). \h#start-public|Start \c{public} builds| diff --git a/intro2-tldr.orig b/intro2-tldr.orig index c1edefb..434503b 100644 --- a/intro2-tldr.orig +++ b/intro2-tldr.orig @@ -1,7 +1,8 @@ created new executable project hello in /tmp/hello.git/ -[master (root-commit) 241bb46] first commit - 11 files changed, 100 insertions(+) +[master (root-commit) db9119c] first commit + 12 files changed, 103 insertions(+) create mode 100644 .gitignore + create mode 100644 README.md create mode 100644 build/.gitignore create mode 100644 build/bootstrap.build create mode 100644 build/root.build @@ -27,9 +28,10 @@ hello │   ├── hello.cxx │   └── testscript ├── manifest +├── README.md └── repositories.manifest -2 directories, 8 files +2 directories, 9 files + cd hello @@ -53,19 +55,20 @@ fetching git:build2.org/hello/libhello#v1.0.0 (prerequisite of dir:/tmp/hello) querying https://git.build2.org/hello/libhello.git fetching from https://git.build2.org/hello/libhello.git synchronizing /tmp/hello-gcc/: - new libhello/1.0.0+2 (required by hello) + new libhello/1.0.0+4 (required by hello) upgrade hello/0.1.0#1 -distributing libhello/1.0.0+2 -version.in ../hello-gcc/libhello-1.0.0+2/libhello/version.hxx.in -c++ ../hello-gcc/libhello-1.0.0+2/libhello/cxx{hello} +distributing libhello/1.0.0+4 +version.in ../hello-gcc/libhello-1.0.0+4/libhello/version.hxx.in c++ hello/cxx{hello}@../hello-gcc/hello/hello/ -ld ../hello-gcc/libhello-1.0.0+2/libhello/libs{hello} +c++ ../hello-gcc/libhello-1.0.0+4/libhello/cxx{hello} +ld ../hello-gcc/libhello-1.0.0+4/libhello/libs{hello} ld ../hello-gcc/hello/hello/exe{hello} ln ../hello-gcc/hello/hello/exe{hello} -> hello/ + bdep fetch fetching git:build2.org/hello/libhello (prerequisite of dir:/tmp/hello) querying https://git.build2.org/hello/libhello.git +fetching from https://git.build2.org/hello/libhello.git fetching git:build2.org/hello/libformat##HEAD (prerequisite of git:build2.org/hello/libhello) querying https://git.build2.org/hello/libformat.git fetching from https://git.build2.org/hello/libformat.git @@ -75,22 +78,22 @@ fetching from https://git.build2.org/hello/libprint.git + bdep status -i hello configured 0.1.0#1 - libhello ^1.0.0 configured 1.0.0+2 available [1.1.0+2] + libhello ^1.0.0 configured 1.0.0+4 available [1.1.0+4] + bdep sync libhello synchronizing: - new libformat/1.0.0+2 (required by libhello) - new libprint/1.0.0+2 (required by libhello) - upgrade libhello/1.1.0+2 + new libformat/1.0.0+4 (required by libhello) + new libprint/1.0.0+4 (required by libhello) + upgrade libhello/1.1.0+4 reconfigure hello/0.1.0#1 -distributing libformat/1.0.0+2 -distributing libprint/1.0.0+2 -distributing libhello/1.1.0+2 +distributing libformat/1.0.0+4 +distributing libprint/1.0.0+4 +distributing libhello/1.1.0+4 + bdep sync libhello/1.0.0 synchronizing: - drop libprint/1.0.0+2 (unused) - drop libformat/1.0.0+2 (unused) - downgrade libhello/1.0.0+2 + drop libprint/1.0.0+4 (unused) + drop libformat/1.0.0+4 (unused) + downgrade libhello/1.0.0+4 reconfigure hello/0.1.0#1 -distributing libhello/1.0.0+2 +distributing libhello/1.0.0+4 diff --git a/intro2-tour.orig b/intro2-tour.orig index deb4ff1..c87a525 100644 --- a/intro2-tour.orig +++ b/intro2-tour.orig @@ -13,9 +13,10 @@ hello │   ├── hello.cxx │   └── testscript ├── manifest +├── README.md └── repositories.manifest -2 directories, 8 files +2 directories, 9 files + cd hello @@ -58,12 +59,13 @@ EOE : 1 name: hello version: 0.1.0-a.0.z -summary: hello executable -license: TODO +summary: hello C++ executable +license: proprietary +description-file: README.md url: https://example.org/hello email: boris@codesynthesis.com -depends: * build2 >= 0.9.0- -depends: * bpkg >= 0.9.0- +depends: * build2 >= 0.10.0 +depends: * bpkg >= 0.10.0 #depends: libhello ^1.0.0 + bdep init -C ../hello-gcc @gcc cc config.cxx=g++ @@ -78,8 +80,10 @@ created configuration @clang /tmp/hello-clang/ 2 auto-synchronized synchronizing: new hello/0.1.0-a.0.19700101000000 -+ ls -d -1 ../hello ../hello-clang ../hello-gcc ../hello.git ++ ls -d -1 ../hello ../hello2 ../hello2.tar.gz ../hello-clang ../hello-gcc ../hello.git ../hello +../hello2 +../hello2.tar.gz ../hello-clang ../hello-gcc ../hello.git @@ -183,9 +187,10 @@ Hello, Windows! + git add . + git commit -m Initial implementation -[master (root-commit) 89f4b5e] Initial implementation - 11 files changed, 100 insertions(+) +[master (root-commit) d81cc12] Initial implementation + 12 files changed, 103 insertions(+) create mode 100644 .gitignore + create mode 100644 README.md create mode 100644 build/.gitignore create mode 100644 build/bootstrap.build create mode 100644 build/root.build @@ -201,20 +206,20 @@ Hello, Windows! + git push origin master -u --force To github.com:boris-kolpackov/hello.git - + fea34a6...89f4b5e master -> master (forced update) + + 609f764...d81cc12 master -> master (forced update) Branch 'master' set up to track remote branch 'master' from 'origin'. + bdep ci --simulate success submitting: to: https://ci.stage.build2.org - in: https://github.com/boris-kolpackov/hello.git#master@89f4b5e1a0b610a5e4f2bc452ac2e3481de8c39b + in: https://github.com/boris-kolpackov/hello.git#master@d81cc12cbafdfa7c052964932c174d43e23c00f7 package: hello - version: 0.1.0-a.0.20190318111903.89f4b5e1a0b6 + version: 0.1.0-a.0.20190608073910.d81cc12cbafd continue? [y/n] % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed - 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 100 643 100 163 100 480 77 229 0:00:02 0:00:02 --:--:-- 229 -CI request is queued: https://ci.stage.build2.org/@23649619-d204-44f4-8ddd-e4072a78a12d -reference: 23649619-d204-44f4-8ddd-e4072a78a12d + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 79 812 0 0 100 649 0 419 0:00:01 0:00:01 --:--:-- 419 100 812 100 163 100 649 105 419 0:00:01 0:00:01 --:--:-- 419 +CI request is queued: https://ci.stage.build2.org/@bdf6dd05-d0a4-4a0e-b3c4-8dfb8c50a8cd +reference: bdf6dd05-d0a4-4a0e-b3c4-8dfb8c50a8cd + bdep deinit @gcc @clang deinitializing in project /tmp/hello/ @@ -245,8 +250,8 @@ git:build2.org/hello/libhello https://git.build2.org/hello/libhello.git prerequisite git:build2.org/hello/libprint##HEAD https://git.build2.org/hello/libprint.git##HEAD prerequisite git:build2.org/hello/libformat##HEAD https://git.build2.org/hello/libformat.git##HEAD -libhello/1.1.0+2 -libhello/1.0.0+2 +libhello/1.1.0+4 +libhello/1.0.0+4 + bpkg rep-info https://git.build2.org/hello/libhello.git#HEAD querying https://git.build2.org/hello/libhello.git @@ -255,7 +260,7 @@ git:build2.org/hello/libhello#HEAD https://git.build2.org/hello/libhello.git#HEA prerequisite git:build2.org/hello/libprint##HEAD https://git.build2.org/hello/libprint.git##HEAD prerequisite git:build2.org/hello/libformat##HEAD https://git.build2.org/hello/libformat.git##HEAD -libhello/1.1.0+2 +libhello/1.1.0+4 + bdep status fetching pkg:stage.build2.org (prerequisite of dir:/tmp/hello) @@ -267,25 +272,25 @@ trust this certificate? [y/n] hello configured 0.1.0-a.0.19700101000000 availabl + bdep sync synchronizing: - new libhello/1.0.0+2 (required by hello) + new libhello/1.0.0+4 (required by hello) upgrade hello/0.1.0-a.0.19700101000000#1 - 0K ... 100% 123M=0s + 0K ... 100% 88.9M=0s + b synchronizing /tmp/hello-gcc/: upgrade hello/0.1.0-a.0.19700101000000#2 mkdir ../hello-gcc/hello/fsdir{hello/} -version.in ../hello-gcc/libhello-1.0.0+2/libhello/version.hxx.in -c++ ../hello-gcc/libhello-1.0.0+2/libhello/cxx{hello} +version.in ../hello-gcc/libhello-1.0.0+4/libhello/version.hxx.in +c++ ../hello-gcc/libhello-1.0.0+4/libhello/cxx{hello} c++ hello/cxx{hello}@../hello-gcc/hello/hello/ -ld ../hello-gcc/libhello-1.0.0+2/libhello/libs{hello} +ld ../hello-gcc/libhello-1.0.0+4/libhello/libs{hello} ld ../hello-gcc/hello/hello/exe{hello} ln ../hello-gcc/hello/hello/exe{hello} -> hello/ + bdep status -ai in configuration @gcc: hello configured 0.1.0-a.0.19700101000000#2 - libhello ^1.0.0 configured 1.0.0+2 + libhello ^1.0.0 configured 1.0.0+4 in configuration @clang: fetching pkg:stage.build2.org (prerequisite of dir:/tmp/hello) @@ -296,41 +301,41 @@ in configuration @gcc: in configuration @clang: synchronizing: - new libhello/1.0.0+2 (required by hello) + new libhello/1.0.0+4 (required by hello) upgrade hello/0.1.0-a.0.19700101000000#1 - 0K ... 100% 98.3M=0s + 0K ... 100% 98.5M=0s + bdep test -ai in configuration @gcc: -c++ ../hello-gcc/libhello-1.0.0+2/tests/basics/cxx{driver} -ld ../hello-gcc/libhello-1.0.0+2/tests/basics/exe{driver} +c++ ../hello-gcc/libhello-1.0.0+4/tests/basics/cxx{driver} +ld ../hello-gcc/libhello-1.0.0+4/tests/basics/exe{driver} +test ../hello-gcc/libhello-1.0.0+4/tests/basics/exe{driver} test hello/testscript{testscript}@../hello-gcc/hello/hello/ ../hello-gcc/hello/hello/exe{hello} -test ../hello-gcc/libhello-1.0.0+2/tests/basics/exe{driver} in configuration @clang: mkdir ../hello-clang/hello/fsdir{hello/} -version.in ../hello-clang/libhello-1.0.0+2/libhello/version.hxx.in -c++ ../hello-clang/libhello-1.0.0+2/tests/basics/cxx{driver} -c++ ../hello-clang/libhello-1.0.0+2/libhello/cxx{hello} +version.in ../hello-clang/libhello-1.0.0+4/libhello/version.hxx.in +c++ ../hello-clang/libhello-1.0.0+4/libhello/cxx{hello} +c++ ../hello-clang/libhello-1.0.0+4/tests/basics/cxx{driver} c++ hello/cxx{hello}@../hello-clang/hello/hello/ -ld ../hello-clang/libhello-1.0.0+2/libhello/libs{hello} +ld ../hello-clang/libhello-1.0.0+4/libhello/libs{hello} +ld ../hello-clang/libhello-1.0.0+4/tests/basics/exe{driver} ld ../hello-clang/hello/hello/exe{hello} -ld ../hello-clang/libhello-1.0.0+2/tests/basics/exe{driver} test hello/testscript{testscript}@../hello-clang/hello/hello/ ../hello-clang/hello/hello/exe{hello} -test ../hello-clang/libhello-1.0.0+2/tests/basics/exe{driver} +test ../hello-clang/libhello-1.0.0+4/tests/basics/exe{driver} + bdep status hello configured 0.1.0-a.0.19700101000000#2 available 0.1.0-a.0.19700101000000#3 + bdep sync synchronizing: - drop libhello/1.0.0+2 (unused) + drop libhello/1.0.0+4 (unused) upgrade hello/0.1.0-a.0.19700101000000#3 synchronizing: - new libhello/1.0.0+2 (required by hello) + new libhello/1.0.0+4 (required by hello) upgrade hello/0.1.0-a.0.19700101000000#4 - 0K ... 100% 99.2M=0s + 0K ... 100% 100M=0s + bdep fetch fetching git:build2.org/hello/libhello (prerequisite of dir:/tmp/hello) querying https://git.build2.org/hello/libhello.git @@ -344,34 +349,34 @@ fetching from https://git.build2.org/hello/libprint.git fetching pkg:stage.build2.org (prerequisite of dir:/tmp/hello) + bdep status libhello -libhello configured 1.0.0+2 available [1.1.0+2] +libhello configured 1.0.0+4 available [1.1.0+4] + bdep sync libhello synchronizing: - new libformat/1.0.0+2 (required by libhello) - new libprint/1.0.0+2 (required by libhello) - upgrade libhello/1.1.0+2 + new libformat/1.0.0+4 (required by libhello) + new libprint/1.0.0+4 (required by libhello) + upgrade libhello/1.1.0+4 reconfigure hello/0.1.0-a.0.19700101000000#4 -distributing libformat/1.0.0+2 -distributing libprint/1.0.0+2 -distributing libhello/1.1.0+2 +distributing libformat/1.0.0+4 +distributing libprint/1.0.0+4 +distributing libhello/1.1.0+4 + bdep status -r hello configured 0.1.0-a.0.19700101000000#4 - libhello ^1.0.0 configured 1.1.0+2 - libformat ^1.0.0 configured 1.0.0+2 - libprint ^1.0.0 configured 1.0.0+2 + libhello ^1.0.0 configured 1.1.0+4 + libformat ^1.0.0 configured 1.0.0+4 + libprint ^1.0.0 configured 1.0.0+4 + bdep status -o libhello -libhello configured 1.1.0+2 available (1.1.0+2) [1.0.0+2] +libhello configured 1.1.0+4 available (1.1.0+4) [1.0.0+4] + bdep sync libhello/1.0.0 synchronizing: - drop libprint/1.0.0+2 (unused) - drop libformat/1.0.0+2 (unused) - downgrade libhello/1.0.0+2 + drop libprint/1.0.0+4 (unused) + drop libformat/1.0.0+4 (unused) + downgrade libhello/1.0.0+4 reconfigure hello/0.1.0-a.0.19700101000000#4 -distributing libhello/1.0.0+2 +distributing libhello/1.0.0+4 + bdep new -C libextra-gcc -t lib -l c++ libextra cc config.cxx=g++ created new library project libextra in /tmp/libextra/ @@ -398,6 +403,7 @@ install libextra/manifest{manifest}@libextra-gcc/libextra/ install libextra-gcc/libextra/libextra/hxx{version} install libextra-gcc/libextra/libextra/liba{extra} install libextra-gcc/libextra/libextra/libs{extra} +install libextra/doc{README.md}@libextra-gcc/libextra/ + tree unpkg-gcc unpkg-gcc @@ -416,9 +422,10 @@ unpkg-gcc └── share └── doc └── libextra - └── manifest + ├── manifest + └── README.md -7 directories, 9 files +7 directories, 10 files + bdep init -C ../hello-gcc-1 @gcc1 cc config.cxx=g++ config.cc.poptions=-I/tmp/unpkg-gcc/include config.cc.loptions=-L/tmp/unpkg-gcc/lib initializing in project /tmp/hello/ @@ -434,48 +441,48 @@ querying https://git.build2.org/hello/libprint.git fetching from https://git.build2.org/hello/libprint.git fetching pkg:stage.build2.org (prerequisite of dir:/tmp/hello) synchronizing: - new libformat/1.0.0+2 (required by libhello) - new libprint/1.0.0+2 (required by libhello) - new libhello/1.1.0+2 (required by hello) + new libformat/1.0.0+4 (required by libhello) + new libprint/1.0.0+4 (required by libhello) + new libhello/1.1.0+4 (required by hello) new hello/0.1.0-a.0.19700101000000 -distributing libformat/1.0.0+2 -distributing libprint/1.0.0+2 -distributing libhello/1.1.0+2 +distributing libformat/1.0.0+4 +distributing libprint/1.0.0+4 +distributing libhello/1.1.0+4 + b test: ../hello-gcc-1/ mkdir ../hello-gcc-1/hello/fsdir{hello/} -version.in ../hello-gcc-1/libprint-1.0.0+2/libprint/version.hxx.in -version.in ../hello-gcc-1/libhello-1.1.0+2/libhello/version.hxx.in -version.in ../hello-gcc-1/libformat-1.0.0+2/libformat/version.hxx.in -c++ ../hello-gcc-1/libhello-1.1.0+2/libhello/cxx{hello} -c++ ../hello-gcc-1/libprint-1.0.0+2/libprint/cxx{print} -c++ ../hello-gcc-1/libformat-1.0.0+2/tests/basics/cxx{driver} -c++ ../hello-gcc-1/libprint-1.0.0+2/tests/basics/cxx{driver} -c++ ../hello-gcc-1/libformat-1.0.0+2/libformat/cxx{format} -c++ ../hello-gcc-1/libhello-1.1.0+2/tests/basics/cxx{driver} +version.in ../hello-gcc-1/libprint-1.0.0+4/libprint/version.hxx.in +version.in ../hello-gcc-1/libformat-1.0.0+4/libformat/version.hxx.in +version.in ../hello-gcc-1/libhello-1.1.0+4/libhello/version.hxx.in +c++ ../hello-gcc-1/libprint-1.0.0+4/libprint/cxx{print} +c++ ../hello-gcc-1/libprint-1.0.0+4/tests/basics/cxx{driver} +c++ ../hello-gcc-1/libformat-1.0.0+4/tests/basics/cxx{driver} +c++ ../hello-gcc-1/libhello-1.1.0+4/libhello/cxx{hello} +c++ ../hello-gcc-1/libformat-1.0.0+4/libformat/cxx{format} +c++ ../hello-gcc-1/libhello-1.1.0+4/tests/basics/cxx{driver} c++ hello/cxx{hello}@../hello-gcc-1/hello/hello/ -ld ../hello-gcc-1/libprint-1.0.0+2/libprint/libs{print} -ld ../hello-gcc-1/libprint-1.0.0+2/tests/basics/exe{driver} -ld ../hello-gcc-1/libformat-1.0.0+2/libformat/libs{format} -ld ../hello-gcc-1/libformat-1.0.0+2/tests/basics/exe{driver} -ld ../hello-gcc-1/libhello-1.1.0+2/libhello/libs{hello} -ld ../hello-gcc-1/libhello-1.1.0+2/tests/basics/exe{driver} +ld ../hello-gcc-1/libprint-1.0.0+4/libprint/libs{print} +ld ../hello-gcc-1/libprint-1.0.0+4/tests/basics/exe{driver} +ld ../hello-gcc-1/libformat-1.0.0+4/libformat/libs{format} +ld ../hello-gcc-1/libformat-1.0.0+4/tests/basics/exe{driver} +ld ../hello-gcc-1/libhello-1.1.0+4/libhello/libs{hello} +ld ../hello-gcc-1/libhello-1.1.0+4/tests/basics/exe{driver} ld ../hello-gcc-1/hello/hello/exe{hello} -test ../hello-gcc-1/libhello-1.1.0+2/tests/basics/exe{driver} test hello/testscript{testscript}@../hello-gcc-1/hello/hello/ ../hello-gcc-1/hello/hello/exe{hello} -test ../hello-gcc-1/libformat-1.0.0+2/tests/basics/exe{driver} -test ../hello-gcc-1/libprint-1.0.0+2/tests/basics/exe{driver} +test ../hello-gcc-1/libhello-1.1.0+4/tests/basics/exe{driver} +test ../hello-gcc-1/libformat-1.0.0+4/tests/basics/exe{driver} +test ../hello-gcc-1/libprint-1.0.0+4/tests/basics/exe{driver} + b configure: ../hello-gcc/ config.cc.poptions+=-I/tmp/unpkg-gcc/include config.cc.loptions+=-L/tmp/unpkg-gcc/lib save ../hello-gcc/build/config.build save ../hello-gcc/hello/build/config.build -save ../hello-gcc/libhello-1.0.0+2/build/config.build -save ../hello-gcc/libhello-1.0.0+2/tests/build/config.build +save ../hello-gcc/libhello-1.0.0+4/build/config.build +save ../hello-gcc/libhello-1.0.0+4/tests/build/config.build + b test -c++ ../hello-gcc/libhello-1.0.0+2/libhello/cxx{hello} +c++ ../hello-gcc/libhello-1.0.0+4/libhello/cxx{hello} c++ hello/cxx{hello}@../hello-gcc/hello/hello/ -ld ../hello-gcc/libhello-1.0.0+2/libhello/libs{hello} +ld ../hello-gcc/libhello-1.0.0+4/libhello/libs{hello} ld ../hello-gcc/hello/hello/exe{hello} ln ../hello-gcc/hello/hello/exe{hello} -> hello/ test hello/testscript{testscript}@../hello-gcc/hello/hello/ ../hello-gcc/hello/hello/exe{hello} @@ -496,9 +503,10 @@ To github.com:boris-kolpackov/hello.git - [deleted] v0.1.0-a.1 To github.com:boris-kolpackov/hello.git - [deleted] v0.1.0 -[master (root-commit) fad01cd] Initial implementation - 11 files changed, 100 insertions(+) +[master (root-commit) 29640f2] Initial implementation + 12 files changed, 103 insertions(+) create mode 100644 .gitignore + create mode 100644 README.md create mode 100644 build/.gitignore create mode 100644 build/bootstrap.build create mode 100644 build/root.build @@ -510,16 +518,16 @@ To github.com:boris-kolpackov/hello.git create mode 100644 manifest create mode 100644 repositories.manifest To github.com:boris-kolpackov/hello.git - + 89f4b5e...fad01cd master -> master (forced update) + + d81cc12...29640f2 master -> master (forced update) Branch 'master' set up to track remote branch 'master' from 'origin'. + bdep status -hello configured 0.1.0-a.0.19700101000000 available 0.1.0-a.0.20190318112403.fad01cd3755d +hello configured 0.1.0-a.0.19700101000000 available 0.1.0-a.0.20190608074122.29640f28aadc + b info project: hello -version: 0.1.0-a.0.20190318112403.fad01cd3755d -summary: hello executable +version: 0.1.0-a.0.20190608074122.29640f28aadc +summary: hello C++ executable url: https://example.org/hello src_root: /tmp/hello/ out_root: /tmp/hello-gcc/hello/ @@ -530,15 +538,15 @@ meta-operations: perform configure disfigure dist info + bdep sync synchronizing: - upgrade hello/0.1.0-a.0.20190318112403.fad01cd3755d + upgrade hello/0.1.0-a.0.20190608074122.29640f28aadc + bdep status -hello configured 0.1.0-a.0.20190318112403.fad01cd3755d -[master fc66e59] Another commit +hello configured 0.1.0-a.0.20190608074122.29640f28aadc +[master 19fd457] Another commit 1 file changed, 1 insertion(+) + bdep status -hello configured 0.1.0-a.0.20190318112403.fad01cd3755d available 0.1.0-a.0.20190318112408.fc66e591d04b +hello configured 0.1.0-a.0.20190608074122.29640f28aadc available 0.1.0-a.0.20190608074126.19fd45772762 + bdep release --alpha --push releasing: @@ -549,9 +557,9 @@ releasing: commit: yes tag: v0.1.0-a.1 push: origin/master -continue? [y/n] [master 6e43d0c] Release version 0.1.0-a.1 +continue? [y/n] [master ef611b3] Release version 0.1.0-a.1 1 file changed, 1 insertion(+), 1 deletion(-) -[master c3a8811] Change version to 0.1.0-a.1.z +[master 5fccf16] Change version to 0.1.0-a.1.z 1 file changed, 1 insertion(+), 1 deletion(-) pushing branch master, tag v0.1.0-a.1 @@ -563,7 +571,7 @@ releasing: commit: yes tag: v0.1.0 push: origin/master -continue? [y/n] [master a0297d8] Release version 0.1.0 +continue? [y/n] [master e5bcd1e] Release version 0.1.0 1 file changed, 1 insertion(+), 1 deletion(-) pushing branch master, tag v0.1.0 @@ -588,9 +596,9 @@ Branch 'build2-control' set up to track remote branch 'build2-control' from 'ori submitting hello-0.1.0.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed - 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 100 1889 0 0 100 1889 0 856 0:00:02 0:00:02 --:--:-- 855 100 2005 100 116 100 1889 51 834 0:00:02 0:00:02 --:--:-- 834 + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 100 1981 0 0 100 1981 0 867 0:00:02 0:00:02 --:--:-- 868 100 2097 100 116 100 1981 48 832 0:00:02 0:00:02 --:--:-- 832 package submission is queued: https://queue.cppget.org/hello/0.1.0 -reference: d8c68e1b97c8 +reference: 6e90dc4ba2cc + bdep release --open --push opening: @@ -599,7 +607,7 @@ opening: open: 0.2.0-a.0.z commit: yes push: origin/master -continue? [y/n] [master 609f764] Change version to 0.2.0-a.0.z +continue? [y/n] [master 3beffd1] Change version to 0.2.0-a.0.z 1 file changed, 1 insertion(+), 1 deletion(-) pushing branch master @@ -641,12 +649,12 @@ mkdir ../hello-gcc/libhello/fsdir{libhello/} mkdir ../hello-gcc/hello/fsdir{hello/} mkdir ../hello-gcc/libhello/tests/fsdir{basics/} version.in ../libhello/libhello/version.hxx.in -c++ hello/cxx{hello}@../hello-gcc/hello/hello/ c++ ../libhello/libhello/cxx{hello}@../hello-gcc/libhello/libhello/ +c++ hello/cxx{hello}@../hello-gcc/hello/hello/ c++ ../libhello/tests/basics/cxx{driver}@../hello-gcc/libhello/tests/basics/ ld ../hello-gcc/libhello/libhello/libs{hello} -ld ../hello-gcc/hello/hello/exe{hello} ld ../hello-gcc/libhello/tests/basics/exe{driver} +ld ../hello-gcc/hello/hello/exe{hello} test hello/testscript{testscript}@../hello-gcc/hello/hello/ ../hello-gcc/hello/hello/exe{hello} test ../hello-gcc/libhello/tests/basics/exe{driver} @@ -695,8 +703,8 @@ mkdir ../hello-gcc/hello/fsdir{hello/} mkdir ../hello-gcc/libhello/tests/fsdir{basics/} version.in libhello/libhello/version.hxx.in c++ libhello/libhello/cxx{hello}@../hello-gcc/libhello/libhello/ -c++ libhello/tests/basics/cxx{driver}@../hello-gcc/libhello/tests/basics/ c++ hello/hello/cxx{hello}@../hello-gcc/hello/hello/ +c++ libhello/tests/basics/cxx{driver}@../hello-gcc/libhello/tests/basics/ ld ../hello-gcc/libhello/libhello/libs{hello} ld ../hello-gcc/hello/hello/exe{hello} ld ../hello-gcc/libhello/tests/basics/exe{driver} @@ -722,68 +730,68 @@ fetching from https://git.build2.org/hello/libformat.git fetching git:build2.org/hello/libprint##HEAD (prerequisite of git:build2.org/hello/libhello) querying https://git.build2.org/hello/libprint.git fetching from https://git.build2.org/hello/libprint.git - new libformat/1.0.0+2 (required by libhello) - new libprint/1.0.0+2 (required by libhello) - new libhello/1.1.0+2 (required by hello) - new hello/1.0.0+2 -continue? [Y/n] distributing libformat/1.0.0+2 -checked out libformat/1.0.0+2 -configured libformat/1.0.0+2 -distributing libprint/1.0.0+2 -checked out libprint/1.0.0+2 -configured libprint/1.0.0+2 -distributing libhello/1.1.0+2 -checked out libhello/1.1.0+2 -configured libhello/1.1.0+2 -distributing hello/1.0.0+2 -checked out hello/1.0.0+2 -configured hello/1.0.0+2 -version.in libhello-1.1.0+2/libhello/version.hxx.in -version.in libprint-1.0.0+2/libprint/version.hxx.in -version.in libformat-1.0.0+2/libformat/version.hxx.in -c++ libprint-1.0.0+2/libprint/cxx{print} -c++ libhello-1.1.0+2/libhello/cxx{hello} -c++ libformat-1.0.0+2/libformat/cxx{format} -c++ hello-1.0.0+2/hello/cxx{hello} -ld libprint-1.0.0+2/libprint/libs{print} -ld libformat-1.0.0+2/libformat/libs{format} -ld libhello-1.1.0+2/libhello/libs{hello} -ld hello-1.0.0+2/hello/exe{hello} -updated hello/1.0.0+2 + new libformat/1.0.0+4 (required by libhello) + new libprint/1.0.0+4 (required by libhello) + new libhello/1.1.0+4 (required by hello) + new hello/1.0.0+3 +continue? [Y/n] distributing libformat/1.0.0+4 +checked out libformat/1.0.0+4 +configured libformat/1.0.0+4 +distributing libprint/1.0.0+4 +checked out libprint/1.0.0+4 +configured libprint/1.0.0+4 +distributing libhello/1.1.0+4 +checked out libhello/1.1.0+4 +configured libhello/1.1.0+4 +distributing hello/1.0.0+3 +checked out hello/1.0.0+3 +configured hello/1.0.0+3 +version.in libprint-1.0.0+4/libprint/version.hxx.in +c++ libprint-1.0.0+4/libprint/cxx{print} +version.in libhello-1.1.0+4/libhello/version.hxx.in +c++ libformat-1.0.0+4/libformat/cxx{format} +version.in libformat-1.0.0+4/libformat/version.hxx.in +c++ libhello-1.1.0+4/libhello/cxx{hello} +c++ hello-1.0.0+3/hello/cxx{hello} +ld libprint-1.0.0+4/libprint/libs{print} +ld libformat-1.0.0+4/libformat/libs{format} +ld libhello-1.1.0+4/libhello/libs{hello} +ld hello-1.0.0+3/hello/exe{hello} +updated hello/1.0.0+3 + bpkg install hello -ld libhello-1.1.0+2/libhello/libs{hello} -ld hello-1.0.0+2/hello/exe{hello} +ld libhello-1.1.0+4/libhello/libs{hello} +ld hello-1.0.0+3/hello/exe{hello} install /opt/tools/ install /opt/tools/include/ install /opt/tools/include/libhello/ -install libhello-1.1.0+2/libhello/hxx{export} -install libhello-1.1.0+2/libhello/hxx{hello} +install libhello-1.1.0+4/libhello/hxx{export} +install libhello-1.1.0+4/libhello/hxx{hello} install /opt/tools/share/ install /opt/tools/share/doc/ install /opt/tools/share/doc/libhello/ -install libhello-1.1.0+2/manifest{manifest} -install libhello-1.1.0+2/libhello/hxx{version} +install libhello-1.1.0+4/manifest{manifest} +install libhello-1.1.0+4/libhello/hxx{version} install /opt/tools/include/libprint/ -install libprint-1.0.0+2/libprint/hxx{print} -install libprint-1.0.0+2/libprint/hxx{export} +install libprint-1.0.0+4/libprint/hxx{print} +install libprint-1.0.0+4/libprint/hxx{export} install /opt/tools/share/doc/libprint/ -install libprint-1.0.0+2/manifest{manifest} -install libprint-1.0.0+2/libprint/hxx{version} -install libprint-1.0.0+2/libprint/libs{print} +install libprint-1.0.0+4/manifest{manifest} +install libprint-1.0.0+4/libprint/hxx{version} +install libprint-1.0.0+4/libprint/libs{print} install /opt/tools/include/libformat/ -install libformat-1.0.0+2/libformat/hxx{export} -install libformat-1.0.0+2/libformat/hxx{format} +install libformat-1.0.0+4/libformat/hxx{export} +install libformat-1.0.0+4/libformat/hxx{format} install /opt/tools/share/doc/libformat/ -install libformat-1.0.0+2/manifest{manifest} -install libformat-1.0.0+2/libformat/hxx{version} -install libformat-1.0.0+2/libformat/libs{format} -install libhello-1.1.0+2/libhello/libs{hello} +install libformat-1.0.0+4/manifest{manifest} +install libformat-1.0.0+4/libformat/hxx{version} +install libformat-1.0.0+4/libformat/libs{format} +install libhello-1.1.0+4/libhello/libs{hello} install /opt/tools/bin/ -install hello-1.0.0+2/hello/exe{hello} +install hello-1.0.0+3/hello/exe{hello} install /opt/tools/share/doc/hello/ -install hello-1.0.0+2/manifest{manifest} -installed hello/1.0.0+2 +install hello-1.0.0+3/manifest{manifest} +installed hello/1.0.0+3 + /opt/tools/bin/hello World Hello, World! @@ -830,36 +838,36 @@ Hello, World! 13 directories, 23 files + bpkg uninstall hello -uninstall hello-1.0.0+2/manifest{manifest} +uninstall hello-1.0.0+3/manifest{manifest} uninstall /opt/tools/share/doc/hello/ -uninstall hello-1.0.0+2/hello/exe{hello} +uninstall hello-1.0.0+3/hello/exe{hello} uninstall /opt/tools/bin/ -uninstall libhello-1.1.0+2/libhello/libs{hello} -uninstall libformat-1.0.0+2/libformat/libs{format} -uninstall libformat-1.0.0+2/libformat/hxx{version} -uninstall libformat-1.0.0+2/manifest{manifest} +uninstall libhello-1.1.0+4/libhello/libs{hello} +uninstall libformat-1.0.0+4/libformat/libs{format} +uninstall libformat-1.0.0+4/libformat/hxx{version} +uninstall libformat-1.0.0+4/manifest{manifest} uninstall /opt/tools/share/doc/libformat/ -uninstall libformat-1.0.0+2/libformat/hxx{format} -uninstall libformat-1.0.0+2/libformat/hxx{export} +uninstall libformat-1.0.0+4/libformat/hxx{format} +uninstall libformat-1.0.0+4/libformat/hxx{export} uninstall /opt/tools/include/libformat/ -uninstall libprint-1.0.0+2/libprint/libs{print} -uninstall libprint-1.0.0+2/libprint/hxx{version} -uninstall libprint-1.0.0+2/manifest{manifest} +uninstall libprint-1.0.0+4/libprint/libs{print} +uninstall libprint-1.0.0+4/libprint/hxx{version} +uninstall libprint-1.0.0+4/manifest{manifest} uninstall /opt/tools/share/doc/libprint/ -uninstall libprint-1.0.0+2/libprint/hxx{export} -uninstall libprint-1.0.0+2/libprint/hxx{print} +uninstall libprint-1.0.0+4/libprint/hxx{export} +uninstall libprint-1.0.0+4/libprint/hxx{print} uninstall /opt/tools/include/libprint/ -uninstall libhello-1.1.0+2/libhello/hxx{version} -uninstall libhello-1.1.0+2/manifest{manifest} +uninstall libhello-1.1.0+4/libhello/hxx{version} +uninstall libhello-1.1.0+4/manifest{manifest} uninstall /opt/tools/share/doc/libhello/ uninstall /opt/tools/share/doc/ uninstall /opt/tools/share/ -uninstall libhello-1.1.0+2/libhello/hxx{hello} -uninstall libhello-1.1.0+2/libhello/hxx{export} +uninstall libhello-1.1.0+4/libhello/hxx{hello} +uninstall libhello-1.1.0+4/libhello/hxx{export} uninstall /opt/tools/include/libhello/ uninstall /opt/tools/include/ uninstall /opt/tools/ -uninstalled hello/1.0.0+2 +uninstalled hello/1.0.0+3 + bpkg drop hello following dependencies were automatically built but will no longer be used: diff --git a/upgrade b/upgrade index 26d9fa2..29e230a 100755 --- a/upgrade +++ b/upgrade @@ -97,7 +97,11 @@ cp -rp "$pcfg" "$pcfg.bak" # Step 1. # -bpkg install -d "$bcfg" \ + +BDEP_SYNC=0 b "$bcfg"/libbutl/libbutl/hxx{version} +BDEP_SYNC=0 b "$bcfg"/build2/build2/hxx{version} + +BDEP_SYNC=0 bpkg install -d "$bcfg" \ config.install.root=/tmp/build2-install \ config.bin.rpath=/tmp/build2-install/lib \ build2 diff --git a/version b/version index a42f290..7d7a8b4 100755 --- a/version +++ b/version @@ -13,19 +13,20 @@ usage="usage: etc/version" build2_min=0.10.0 bpkg_min=0.10.0 -ver=0.11.0-a.0.z -#ver=0.11.0 +#ver=0.12.0-a.0.z +ver=0.11.0 mods=(libstd-modules libbutl libbutl.bash libbpkg libbbot bpkg) -odb_ver=2.5.0-b.14.z -#odb_ver=2.5.0-b.15 +#odb_ver=2.5.0-b.16.z +odb_ver=2.5.0-b.15 odb_mods=(libodb libodb-sqlite libodb-pgsql) -#xml_ver=1.1.0-b.7.z -xml_ver=1.1.0-b.6 +#xml_ver=1.1.0-b.8.z +xml_ver=1.1.0-b.7 xml_mods=(libstudxml) -# @@ NOTE: libpkgconf version constraint is updated manually. +# @@ NOTE: libpkgconf version constraint in build2 is updated manually. +# @@ NOTE: libcmark version constraint in brep is updated manually. all=(libstd-modules libbutl libbutl.bash build2 libbpkg bpkg bpkg-rep bdep libbbot bbot brep build2-toolchain msvc-linux openssl-agent buildos) -- cgit v1.1