activity-browser
activity-browser copied to clipboard
Automated release with changelog for the stable version
This PR reduces the effort required to add a new release of the stable version to a single action by the maintainer: Pushing a new tag on the master branch. Everything else is automated, including a changelog in the release notes.
Up until now, a maintainer had to manually create a release on github in order to upload a new stable version to conda. Also the manual changelog has not been updated in over a year.
With this PR the release process is now as follows:
- A maintainer pushes a new tag, e.g.:
git tag -a 2.6.8
git push origin 2.6.8
- github actions creates a changelog based on all merged and labeled PRs since the last release
- github actions creates a release on github which includes the changelog from the previous step in the release notes
- this looks something like this: https://github.com/haasad/activity-browser/releases/tag/0.3.9
- or this: https://github.com/haasad/EcoInventDownLoader/releases/tag/1.4.1
- the conda package is built and uploaded to the bsteubing channels as before
This only works well under the following conditions:
- PR titles show up in the changelog, so they should summarize the change well
- PRs need to be labeled, otherwise they're not included in the changelog
- The PRs show up in changelog category according to the label(s), I defined some categories in ci/changelog-configuration.json, but they can always be adapted
- Changes directly commited to master won't be included in the changelog (but could be manually edited in afterwards)
I added a pull request template with a check-list to ensure that setting a good title and labeling is not forgotten. It's mainly a responsibility for the maintainers to ensure that this is done.
Of course this still works when labels etc are forgotten, it will just reduce the quality of the changelog.
@bsteubing I think this is a big quality-of-life improvement for the maintenance of the AB, but it's a "big" change, so please let me know if anything is unclear.
Coverage decreased (-0.09%) to 53.873% when pulling fb5bf20fbd5956c7cdfd520c06454f0b801a1f5f on haasad:automate-release into 0784abe22f3f9b735d9c61fdc6e2634a3663ace7 on LCA-ActivityBrowser:master.
@haasad: @bsteubing and I discussed the PR and think it's a good idea to include this. Could you still have a look at the comments I left previously, and then feel free to merge this!
@marc-vdm Sorry for the long time it took me to reply, I've added some comments now. And thanks a lot for the detailed review :handshake:
@haasad No worries, we're all busy sometimes. Just merge when you're ready to go 👍
@marc-vdm we discussed this PR before and decided to merge it, I just see it now... is there still something preventing us from merging it?
@bsteubing I think there were still a few very minor things for @haasad to solve, though we're not specifically in a hurry, as long as this is merged before the next stable release everything should work.
I'll take a look this week and will merge it when ready
@haasad May i ping you on this again?
This PR is not forgotten, I think we should accept it, but I will let @Zoophobus do that as soon as he understands / agrees with this approach.