Boost logo

Boost :

From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2024-05-27 17:49:52


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
>> <boost_at_[hidden]> 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/38ed0545ff2e0cd1f27a3aa6fbd0576d474acfec/ci_boost_release.py#L918-L925
>>>
>>> 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.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk