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

Create release.yml file for automatic release notes generation #1925

Merged
merged 2 commits into from
Dec 28, 2023

Conversation

EwoutH
Copy link
Member

@EwoutH EwoutH commented Dec 23, 2023

Adds a configuration file .github/release.yml that lets GitHub automatically draft release notes based on the labels attached to PRs that will be included in that release. These drafted release notes can form a consistent basis for our changelog and manually expanded with context for certain PRs if needed.

The currently proposed labels are experimental, breaking, feature, enhancement, bug, docs, ci, testing, dependency, maintenance and packaging. The last five are grouped in the changelog under Maintenance 🔧.

For this to work nicely, it's important that all merged PRs have one of these labels attached to them and that the PR titles are sufficiently descriptive.

See Automatically generated release notes.

You can see an example of how this looks here (the Highlights and Breaking changes sections are written by hand, the rest is automatically generated).

@jackiekazil and @tpike3 please review.

Adds a configuration file `.github/release.yml` that lets GitHub automatically draft release notes based on the labels attached to PRs that will be included in that release. These drafted release notes can form a consistent basis for our changelog and manually expanded with context for certain PRs if needed.

The currently proposed labels are `breaking`, `feature`, `enhancement`, `bug`, `docs`, `ci`, `testing`, `dependency`, `maintenance` and `packaging`. The last four are grouped in the changelog under _Maintenance 🔧_.

See [Automatically generated release notes](https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes).
Copy link

codecov bot commented Dec 23, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (7bd42e7) 79.14% compared to head (419ccbb) 79.62%.
Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1925      +/-   ##
==========================================
+ Coverage   79.14%   79.62%   +0.48%     
==========================================
  Files          15       15              
  Lines        1098     1124      +26     
  Branches      236      244       +8     
==========================================
+ Hits          869      895      +26     
  Misses        198      198              
  Partials       31       31              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Member

@tpike3 tpike3 left a comment

Choose a reason for hiding this comment

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

This is great! Doing the release notes analog right now, @EwoutH can you add an experimental label under the new features title this was we capture what features are experimental.

@tpike3
Copy link
Member

tpike3 commented Dec 25, 2023

If I am understanding correctly, I merge this once the next release is out and then all request will follow the new labeling

@EwoutH
Copy link
Member Author

EwoutH commented Dec 25, 2023

Added the experimental category!

You can merge it also before, and then add labels to all the PRs since the 2.1.5 release.

@jackiekazil
Copy link
Member

@EwoutH and I went over this... going to merge. Will be helpful.

@jackiekazil jackiekazil merged commit 97178f6 into projectmesa:main Dec 28, 2023
13 checks passed
@EwoutH EwoutH added the maintenance Release notes label label Jan 9, 2024
@rht
Copy link
Contributor

rht commented Jan 9, 2024

@EwoutH I didn't know about this. Is it 99% algorithmic, or is there a sizeable element of AI in drafting the release?

@EwoutH
Copy link
Member Author

EwoutH commented Jan 9, 2024

100% algorithmic. It just takes the PR labels and titles.

The highlights section is manually written (of course you can use AI tools there).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
maintenance Release notes label
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants