Open cmsj opened 3 years ago
This sounds like a good idea, but a couple of questions:
1) well, more of a request -- examples of "properly done" milestone lists, PRs, etc. This may have to wait til you have it in place, but once you know what will be the "proper way to do things", examples will be helpful 2) what about nightly or development builds?
Examples: definitely, I'll need to format a few things "Correctly" so I can test the automations
As for nightly/dev builds - once we have the automation for releases done, it would be very easy to have a signed build generated on almost any event. For development builds, we'd also want to arrange an alternative appcast.xml
and perhaps even let people switch between the two in the Hammerspoon prefs.
So yeah, we could have a development build generated for each merged PR (not opened PR, since that would allow anyone to get a signed build with any nefarious code in it).
For the avoidance of doubt, 0.9.83 is not included in this, we have a bunch of commit history that can't be automagically turned into release notes, but I'd like to start piloting it for 0.9.84.
This is mostly me leaving notes for myself, but for this to work, there will need to be some changes in how we commit code to this repo.
tl;dr I'd like to automate the releases using GitHub Actions, so a new release would be built, signed and published any time a new version is tagged in the repo - this would allow @asmagill to do releases as well, and also means we could easily release a lot more often (after each PR merge if we really wanted to).
The downside is that we'll need to get a lot more rigorous about the way we land code, because the Changelog will need to be automatically generated.
My proposed workflow would be:
master
(which primarily affects me, since I tend to push stuff directly)pr-fix
,pr-change
,pr-feature
,pr-maintenance
. These would be used to decide which section of the release notes each PR would be mentioned in (with the exception ofMaintenance
which would likely be excluded, because it would be stuff like GitHub Actions edits, or fixing build warnings and generally anything that users wouldn't care about).Approve
review on their own PRs, and it makes no sense to slow things down by requiring us to review each other's PRs for even the simplest of changesNotes: