Skip to content

Github Workflow Changes for Release Note Process #4961

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

Merged
merged 10 commits into from
Dec 21, 2022

Conversation

CoderDake
Copy link
Contributor

@CoderDake CoderDake commented Dec 16, 2022

This PR Adds functionality to our github repository for ensuring Release Note process is respected.

That process is Either:

  • Each PR Modifies the NEXT_RELEASE_NOTES.md file
  • A reason for not modifying the file is given in the PR description

The Following is a demo of the github workflow protections in action:
http://screencast/cast/NTQ0NTg0NzkyOTA2MTM3Nnw3OTdhZDZhMC03Nw

The following is a demo of the specific changes that happened to the update_version.dart script
http://screencast/cast/NTg1MjIzMzUwNjc1MDQ2NHw4M2FmMjdiNS04Yg

Demo showing the user of the new release_helper.sh
https://drive.google.com/file/d/13sSrPkU2CtE5SKRqXuWjxeJe-gL5HeYT/view?usp=sharing&resourcekey=0-EWRmUXVnjNgUaIOBwri1kg

@CoderDake CoderDake marked this pull request as ready for review December 16, 2022 22:16
@CoderDake CoderDake requested a review from a team as a code owner December 16, 2022 22:16
@CoderDake CoderDake requested review from bkonyi and removed request for a team December 16, 2022 22:16
@CoderDake CoderDake requested a review from a team December 17, 2022 02:17
@@ -1,9 +1,8 @@
## Writing DevTools release notes
## Generating Release notes
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this section should be reorganized. Something like this:

To update release notes:

  1. <Action. Helping information.>
  2. <Action. Helping information.>
  3. <Action. Helping information.>
    ...

The steps that requires to do something before doing previous step looks counter-user-friendly :)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I definitely agree that this section is a bit convoluted, but for this PR I would like to just focus on changing the part that this PR touches.

tool/README.md Outdated
[README.md](https://github.com/flutter/devtools/blob/master/packages/devtools_app/lib/src/framework/release_notes/README.md)
for details on where to add DevTools release notes to Flutter website and how to test them.

1. The release notes for the clean version can be found in [NEXT_RELEASE_NOTES.md](./release_notes/NEXT_RELEASE_NOTES.md)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is not instruction, but helping information. It should not be item in this list of steps.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In our case the actual release notes will be copied from that file, they will already be prepared there.
I'll make the instructions clearer here.

See the release notes
[README.md](https://github.com/flutter/devtools/blob/master/packages/devtools_app/lib/src/framework/release_notes/README.md)
for details on where to add DevTools release notes to Flutter website and how to test them.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it make sense to add header for the list? Like:

To verify and submit release notes:

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe that is already the case

Comment on lines +189 to +190
git checkout $DEVTOOLS_NEXT_BRANCH
git push -u origin $DEVTOOLS_NEXT_BRANCH
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

will we need to merge master here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it is already done as part of the script. the branch should be fresh as a daisy :)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

but after we merge the clean branch to master, only then will we be creating a PR for this next branch and merging, so at that point, it would be one commit behind

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the 2nd branch is built off of the first, so I don't think we will have an issue with this.
If it does end up being an issue then I will come back and modify this process or the instructions :)

@kenzieschmoll
Copy link
Member

Generally looks pretty good! The one thing we still need to figure out is what our world will look like when the auto-roller is in place, because we don't want the auto-roller to pick up x.y+1.z-dev.0 the day after it picks up our official release branch x.y.z. However, it sounds like we won't have an autoroller set up until well into Q1, so we can iterate on this approach and modify as needed.

tool/README.md Outdated
2. Follow the release notes
[README.md](https://github.com/flutter/devtools/blob/master/packages/devtools_app/lib/src/framework/release_notes/README.md)
to add these DevTools release notes to Flutter website
- make sure to also follow the instructions to test them.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

more of a side note out of the scope of this PR, but testing the release notes viewer in DevTools is cumbersome.

@CoderDake
Copy link
Contributor Author

CoderDake commented Dec 21, 2022

@kenzieschmoll In regards to auto bumping dev versions, I've put protections in place so that it won't ever try to bump a clean version. (Which should catch the case of us trying to bump before we get a chance to push the next version :D)
https://github.com/flutter/devtools/blob/master/.github/workflows/daily-dev-bump.yaml#L44

@kenzieschmoll
Copy link
Member

Which should catch the case of us trying to bump before we get a chance to push the next version :D

If we maintain a single branch in devtools ('master') that the autoroller rolls from, it will pick up daily what is on our tip of trunk. And in this scenario, we are basically automatically bumping to the next version as soon as we merge the clean release version. So the autoroller may not even pick up the clean release version before we bump to the next dev. We may have to modify our process to either maintain two branches or prevent any version bumps during flutter selection windows.

This reverts commit 8916fff.
@CoderDake CoderDake merged commit f6003ac into flutter:master Dec 21, 2022
@CoderDake CoderDake mentioned this pull request Jan 24, 2023
7 tasks
@DartDevtoolWorkflowBot DartDevtoolWorkflowBot mentioned this pull request Jan 24, 2023
7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants