Skip to content

Adopt a changelog manager #83

@jaraco

Description

@jaraco

skeleton-based projects (except for Setuptools and maybe cherrypy libs) currently rely on manually-merged CHANGES.rst, meaning it's not feasible for changes in the skeleton like 133c5e6 to generate changelog entries when incorporated in projects downstream. Adding a manual entry there would cause conflicts with every merge downstream.

The solution for this problem is for projects to adopt something like towncrier or scriv or reno. My main reluctance in adopting one of these is that they all require an extra "finalization" step prior to cutting a release. The current process is super-lightweight (tag and push). Adding a changelog manager will require that every release be managed and managed on a device that has a terminal and git push access. It's conceivable that a Github action could be added to enact a finalize step.

I'm also somewhat reluctant as I'd like to avoid the need to create a new file for each change, but the only alternative would be to somehow indicate the user-facing release notes in the commit history, and since no project has successfully demonstrated that, I'm inclined to accept the file-based approach, despite the toil that adds.

Another concern I want to address is to avoid the need for there to be an issue associated with every change. Although it's best practice to associate an issue or PR with a change, I don't want to require that there be one, the way the Setuptools project does. I want a process that degrades nicely for projects that are informal and fast moving.

I wanted to use reno, as it promises not to require a 'finalization' step, but the caveats scare me. My next instinct would be to use scriv, but since Setuptools uses towncrier, it may be best to use towncrier.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions