On 5/27/24 20:46, Andrey Semashev wrote:
On 5/27/24 20:17, Marshall Clow wrote:
On May 27, 2024, at 8:39 AM, Andrey Semashev via Boost
wrote: On 5/27/24 18:06, Peter Dimov via Boost wrote:
Andrey Semashev wrote:
Something's really wrong with release tagging.
I've looked at a few of these at random and I believe that the common theme is that the boost-1.85.0 tag is always the same as the boost-1.85.0.beta1 tag, even when the library has changes between beta and release.
Do you know where tags for submodules are created? I found this:
https://github.com/boostorg/release-tools/blob/38ed0545ff2e0cd1f27a3aa6fbd05...
but it looks like it only creates the tag for the superproject.
I suspect, git submodules aren't synchronized with the superproject when tags are created.
Here’s how the tags are created (From https://github.com/boostorg/wiki/wiki/Releases%3A-Preparing https://github.com/boostorg/wiki/wiki/Releases%3A-Preparing)
Tag the release in git. Make sure the correct versions of the super project and submodules are checked out, and then do something like:
git tag boost-1.78.0>> git submodule foreach 'git tag boost-1.78.0' git push origin boost-1.78.0>> git submodule foreach 'git push origin boost-1.78.0'
I think, you need to prepend those commands with something like this:
git submodule update --init --recursive --checkout
so that the checked out submodules are on the commits referenced by the superproject.
I.e. this command should "Make sure the correct versions of the super project and submodules are checked out". :) Also, the tagging should probably be a part of some CI script and not done manually.