Editing a changelog file doesn't sound too hard, but usually in the end it is not a developer that does this, but GitHub and this go wrong too many times.
To avoid problems like this, the pip project has been using towncrier.
Proposal
Basically, you would create a news/1234.bugfix file or a news/42.feature file. You do not touch CHANGES.rst. At release time, the person doing the release calls towncrier, which handles updating CHANGES.rst and removing the news fragments.
Problem Description
Editing a changelog file doesn't sound too hard, but usually in the end it is not a developer that does this, but GitHub and this go wrong too many times.
To avoid problems like this, the pip project has been using towncrier.
Proposal
Basically, you would create a news/1234.bugfix file or a news/42.feature file. You do not touch CHANGES.rst. At release time, the person doing the release calls towncrier, which handles updating CHANGES.rst and removing the news fragments.
Useful resources
1)https://pypi.org/project/towncrier/ 2)https://community.plone.org/t/using-towncrier-for-changes-rst-in-plone-packages/6486/15 3)https://gist.github.com/mauritsvanrees/92c40bc16ceaf3c375d81c995b4552c4