-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Change release procedure to use only pull requests #5250
Change release procedure to use only pull requests #5250
Conversation
The documentation is not available anymore as the PR was closed or merged. |
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.
cool thanks ! a few comments:
setup.py
Outdated
``` | ||
git checkout main | ||
git pull upstream main | ||
git checkout -b 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.
(nit) in case a branch with this name already exists
git checkout -b release | |
git checkout -b release-VERSION |
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 made it this way to make it simpler: as remote branches are deleted after the PR is merged.
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.
If a local branch with the same name exists, then previous command generated this error:
fatal: A branch named 'release' already exists.
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.
oh ok !
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 have changed the release branch name so that it triggers docs generation: 88c9c83
Context:
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.
it's fine to not have it unique then
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.
If we have it unique we won't need to delete the branch on a local clone of the repo though - the branch exists temporarily on upstream, but locally it's not deleted when the PR is merged
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 unique naming for the dev version would be more complicated though: something like vX.X.X+1.dev0-dev-version
?
Maybe it is easier to add a step before to delete the local branch dev-version
? See cbd5874
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.
Yea let's add a step to delete the local branch then
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. That step was already added: cbd5874
- Choose a tag: Introduce the new VERSION as tag, that will be created when you publish the release | ||
- Create new tag VERSION on publish |
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'm wondering if it will trigger the release-conda CI job - it's configured like
on:
push:
tags:
- "[0-9]+.[0-9]+.[0-9]+*"
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 guess related to:
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.
@lhoestq maybe we could align the triggering of release-conda to be the same as the one for generating the docs? That is: push to branch v*-release
Or maybe using release
triggering instead?
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.
EDIT:
Indeed, conda-release was not triggered for 2.7.0 release...
Indeed it was triggered: https://github.com/huggingface/datasets/actions/runs/3478362090/jobs/5815637910
- and it was uploaded to huggingface channel: https://anaconda.org/huggingface/datasets
- but not to conda-forge channel: https://anaconda.org/conda-forge/datasets
Any idea why, @lhoestq?
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.
We maintain the huggingface channel but not the conda forge one, which is maintained by the community
EDIT: it's now available on conda forge btw ;)
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!
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 have reverted: 8694901
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.
Push tag for both sounds good :)
setup.py
Outdated
``` | ||
git add -u | ||
git commit -m "Release: VERSION" | ||
git push upstream 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.
git push upstream release | |
git push upstream release-VERSION |
The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. |
The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. |
The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. |
Little recap:
|
Just one question to be addressed: why do we have different triggering events for generate-doc and release-conda? Maybe we could set the same for both: either push-tag (when publishing the release), or push-to-branch I think it will be better to use the push-tag event because in the new release procedure this happens later (when we publish the release), once we have already tested that everything works using the test-PyPI; on the contrary, the push-to-branch event happens before, even before opening the release PR: we could see afterwards that there is an issue, and cancel the Pull Request, but the docs and conda-package will already be published. We could even use the release-published event instead: 8694901 |
This reverts commit 8694901.
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.
Looks all good to me ! Thanks for improving the release procedure :)
- Choose a tag: Introduce the new VERSION as tag, that will be created when you publish the release | ||
- Create new tag VERSION on publish |
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.
Push tag for both sounds good :)
@lhoestq now that we have push-tag event for both build_documentation and release-conda, we have no constraint on the naming of the release branch:
|
This PR changes the release procedure so that:
Close #5251.