Skip to content
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

[CI] Add Release Notes Automation #3170

Merged
merged 1 commit into from
Apr 11, 2023
Merged

Conversation

jackkoenig
Copy link
Contributor

@jackkoenig jackkoenig commented Apr 10, 2023

Add new workflow to generate release notes. This workflow can be run manually via workflow dispatch, but will also run automatically upon creating a release. The workflow dispatch can be used for testing, previewing release notes for a potential release, or for generating release notes for past releases for when the automation has a bug or didn't exist.

Contributor Checklist

  • [NA] Did you add Scaladoc to every public function/method?
  • Did you add at least one test demonstrating the PR?
  • Did you delete any extraneous printlns/debugging code?
  • Did you specify the type of improvement?
  • Did you add appropriate documentation in docs/src?
  • Did you state the API impact?
  • Did you specify the code generation impact?
  • Did you request a desired merge strategy?
  • Did you add text to be included in the Release Notes for this change?

Type of Improvement

  • Internal or build-related (includes code refactoring/cleanup)

API Impact

No impact

Backend Code Generation Impact

No impact

Desired Merge Strategy

  • Squash

Release Notes

Reviewer Checklist (only modified by reviewer)

  • Did you add the appropriate labels? (Select the most appropriate one based on the "Type of Improvement")
  • Did you mark the proper milestone (Bug fix: 3.5.x or 3.6.x depending on impact, API modification or big change: 5.0.0)?
  • Did you review?
  • Did you check whether all relevant Contributor checkboxes have been checked?
  • Did you do one of the following when ready to merge:
    • Squash: You/ the contributor Enable auto-merge (squash), clean up the commit message, and label with Please Merge.
    • Merge: Ensure that contributor has cleaned up their commit history, then merge with Create a merge commit.

@jackkoenig jackkoenig added the Internal Internal change, does not affect users, will be included in release notes label Apr 10, 2023
@jackkoenig
Copy link
Contributor Author

The new Require Release Notes Label correctly blocked this PR and then took ~10s to update once I added a label.

@jackkoenig jackkoenig added Internal Internal change, does not affect users, will be included in release notes and removed Internal Internal change, does not affect users, will be included in release notes labels Apr 10, 2023
Copy link
Contributor

@chick chick left a comment

Choose a reason for hiding this comment

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

Looks good, didn't dig too deep. Let me know if I should do a deeper dive

Copy link
Contributor

@mwachs5 mwachs5 left a comment

Choose a reason for hiding this comment

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

is there anythign to add to CONTRIBUTING.md or the PR checklist that goes in hand with this?

@jackkoenig
Copy link
Contributor Author

is there anything to add to CONTRIBUTING.md or the PR checklist that goes in hand with this?

Yeah probably, I'll add a couple of things. We can also iterate as the rest of the developers (who missed today's dev meeting where I talked about this 😉) become aware of the new automation and rules.

- Bugfix
- Documentation or website-related
- Dependency update
- Internal or build-related (includes code refactoring/cleanup)
-->

#### API Impact
Copy link
Contributor

Choose a reason for hiding this comment

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

should these be labels too? Or say something like "if you picked API Modification above, explain more here"?

Copy link
Contributor

Choose a reason for hiding this comment

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

same with below "Backend Code Generation Impact" -- should that be a label?

Copy link
Contributor

Choose a reason for hiding this comment

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

And can we get rid of "desired merge strategy"...?

Mostly trying to slash the words people write that are redundant with labels they will apply.

Mayve this is getting too demanding for this PR :)

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 do see API impact as "if you picked API Modification above, explain more here" so that's a good thing to add.

I'm less sure about "Backend Code Generation Impact", it used to be a label but I removed it. Should it be a release notes category or should it be related to expanding upon an "API modification"? I guess changes to naming are sort of their own thing and are "Back Code Generation" changes... I'll add another label and release notes category.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

And can we get rid of "desired merge strategy"...?

Mostly trying to slash the words people write that are redundant with labels they will apply.

Mayve this is getting too demanding for this PR :)

I'm all for some streamlining of the template, but I would rather save that for a separate PR

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Actually I am going to tweak it a bit because things like API and Backend Code Generation Impact should be included in release notes and thus shouldn't be separate sections.

@@ -45,7 +46,7 @@ Text from here to the end of the body will be considered for inclusion in the re
-->

### Reviewer Checklist (only modified by reviewer)
- [ ] Did you add the appropriate labels?
- [ ] Did you add the appropriate labels? (Select the most appropriate one based on the "Type of Improvement")
Copy link
Contributor

Choose a reason for hiding this comment

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

does this have to be one?

Copy link
Contributor

Choose a reason for hiding this comment

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

(i agree it's probably good practice sort them by order of precedence if it can be only one)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

image

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Since each PR can only be in one category in the release notes (I guess we could change that but IMO it only makes sense to be there once), there can only be one release notes label. We could maybe change this but I think it's a reasonable place to start and see how it goes.

Add new workflow to generate release notes. This workflow can be run
manually via workflow dispatch, but will also run automatically upon
creating a release. The workflow dispatch can be used for testing,
previewing release notes for a potential release, or for generating
release notes for past releases for when the automation has a bug or
didn't exist.

Also update the PR template and CONTRIBUTING guidelines to include
information about the new required labels and automation. Also
streamline the PR template a little bit to nudge developers towards
putting more information in the "Release Notes" section of the PR
template.
@jackkoenig jackkoenig added Documentation Only changing documentation and removed Internal Internal change, does not affect users, will be included in release notes labels Apr 10, 2023

<!-- Does this change any generated Verilog? -->
<!-- How does it change it or in what circumstances would it? -->

#### Desired Merge Strategy
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@mwachs5 I've made some more changes to the template to streamline it a little and nudge PR authors more toward writing release notes than putting things in these sections (which are/were not included in the release notes).

@jackkoenig jackkoenig merged commit 26f7f4e into main Apr 11, 2023
@jackkoenig jackkoenig deleted the release-notes-automation branch April 11, 2023 02:57
jared-barocsi pushed a commit that referenced this pull request Apr 11, 2023
Add new workflow to generate release notes. This workflow can be run
manually via workflow dispatch, but will also run automatically upon
creating a release. The workflow dispatch can be used for testing,
previewing release notes for a potential release, or for generating
release notes for past releases for when the automation has a bug or
didn't exist.

Also update the PR template and CONTRIBUTING guidelines to include
information about the new required labels and automation. Also
streamline the PR template a little bit to nudge developers towards
putting more information in the "Release Notes" section of the PR
template.
azidar pushed a commit that referenced this pull request Apr 11, 2023
Add new workflow to generate release notes. This workflow can be run
manually via workflow dispatch, but will also run automatically upon
creating a release. The workflow dispatch can be used for testing,
previewing release notes for a potential release, or for generating
release notes for past releases for when the automation has a bug or
didn't exist.

Also update the PR template and CONTRIBUTING guidelines to include
information about the new required labels and automation. Also
streamline the PR template a little bit to nudge developers towards
putting more information in the "Release Notes" section of the PR
template.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation Only changing documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants