Enable towncrier for changelog aggregation #90
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR sets up the configuration and infrastructure for towncrier to maintain our changelog. Going forward, every pull request should contain a changelog fragment. We can add something to verify that, but I've decided to omit that from the scope of this PR because I don't want to stretch it out too long.
With this change, our procedure for releasing the package (previously outlined in #40) gains an extra step:
tox run -e towncrier -- version {version}
(where{version}
is a placeholder for the actual version number we want to release). That will generate the changelog entries. Commit the changes, push the branch, make a PR, and get it merged by the usual process.v{version}
, in the Github web interface (or by using the Github API) - this is step 1 from the first list in the description of Rewrite the release workflow and refactor existing GHA workflows #40.It's going to be a little tedious at first, but I think this is not too bad. In the future, we can definitely make this more automatic e.g. by adding a Github workflow to run through some of these steps, but it may be better to switch around some of the steps the release procedure, perhaps along the lines of one of the alternatives described in #40. I think we need some time (and maybe experience) to figure that out, so I've chosen to defer doing anything more complicated for a future PR. (Open to discussion, as always)
Closes #88 (and take note of the discussion happening there before deciding whether to merge this!)