-
Notifications
You must be signed in to change notification settings - Fork 748
Update the way in which the stable branch is maintained #13769
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update the way in which the stable branch is maintained #13769
Conversation
replace all occurences of stabilization-vx.y.z with just stabilization change the process of pushing the tag and modifying the stable branch
docs/release_process.md
Outdated
|
||
- Open a PR to bump the version of `CMakeLists.txt` on the **master** branch. | ||
- For example, when the `stabilization-v0.1.65` is created, the line `set(SSG_PATCH_VERSION 65)` | ||
- For example, if the version `0.1.65` is going to be released, the line `set(SSG_PATCH_VERSION 65)` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the proper phrasing is "if the version ... is to be released" rather than using "going to be" (future tense in a condition).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Interesting catch, but it seems that even the current phrasing is fine.
https://ell.stackexchange.com/questions/177544/be-to-verb-vs-be-going-to-verb
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am still not convinced, my problem was with the conditional, see ie. https://www.ef.com/wwen/english-resources/english-grammar/conditional/ .
Basically, the problem is the "if future tense, then ..." - it's a typical "czechism" because slavic languages commonly use future tense in conditionals, but it's fairly uncommon / incorrect (?) in English where the default tends to be a time-neutral condition "if some thing happens, then ..." with other (past) forms allowed, but less common.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, I think I get the point now. Fixed.
docs/release_process.md
Outdated
### Tagging | ||
- Create and push a **vX.Y.Z** tag to the GitHub repo. | ||
This set of commands describes how to push the release tag. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would still keep it as "how to create and push" rather than just "push".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree.
release=v0.1.99 | ||
remote=origin | ||
|
||
# get up-to-date branches and tags from github | ||
git fetch --tags $remote | ||
|
||
# create a new tag based on latest stabilization | ||
git tag $release $remote/stabilization | ||
|
||
# push the tag | ||
git push $remote $release |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The reason why I had tag creation + push + stable update in one code block is to ensure that everything is done at the same time, in the same "sorta atomic" time.
If you split it up, it might appear that one can wait some time before ie. fetching stabilization
and updating stable
, which is incorrect - the stable
update relies on the local copy of stabilization
being up to date.
So either duplicate the git fetch --tags $remote
in the second section further below, or merge the two sections.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I merge those two sections.
docs/release_process.md
Outdated
GitHb Action again. | ||
Github Action again. | ||
Using `release_helper.py` script: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doesn't using release_helper.py
duplicate some of the commands above (making a tag and pushing it)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In general the release_helper.py should make it easier for you to perform the release, so that you do not have to typw out commands manually. But in this particular case, it only prints out commands you should run. I decided to drop this part of the release helper all together.
@ComplianceAsCode/oracle-maintainers @ComplianceAsCode/ubuntu-maintainers @ComplianceAsCode/suse-maintainers @ComplianceAsCode/complytime-maintainers do you have any feedback to this update of the release process? |
…ction with the "release" section
It just printed out commands to be run, I do not see value and it increases maintenance.
@Mab879 Note that the process described here won't work with the current (We might want to override edit: Well, it would /technically/ work even with current |
@comps I will merge this as is. However, please open a GitHub discussion to document the steps done for older releases. |
Merging, bypass the requirement for the static checks on CS9 as this only changes docs and release scripts. |
Description:
Rationale:
it ensures that the stable branch does not lose history
Fixes Release process - tagged commits on branch #13543
Review Hints: