pytest-asyncio
pytest-asyncio copied to clipboard
Adjust releases so dependabot shows changelog entries
When a project configures dependabot to continuously update project dependencies and a pytest-asyncio update is found, the dependatbot PR will show the commit history that leads to the current pytest-asyncio release.
The experience for the user would be much nicer, if dependabot showed the changelog.
It's currently unclear to me what is needed for dependabot to display the changelog items.
The changelog is no longer displayed in dependabot PRs, because it has been moved from the default project location to the docs folder. It seems like there is no way to point dependabot to the correct changelog path.
The release notes for each release contain a copy of the README. This doesn't help, because the changelog is no longer part of the README, either.
I suggest to create a Python script that extracts a section for a specific version from the changelog. The script will be invoked in the CI run and the extracted changelog section will be converted to markdown and will serve as release note for the corresponding release. This is roughly the approach that pytest takes.
@seifertm I would like to look work with this issue.
@csranasinghe Great! Feel free to give it a try.
If you find existing tools that parse out a piece of the changelog, feel free to use them. We can also convert the .rst changelog to a Markdown file, if that makes things easier.
Let me know if you get stuck or lose interest in the issue.
Not sure if anyone is already working on this, but if that's not the case, I could work on it. I've seen how it's implemented in pytest and I think I can develop something similar.
@marcolab Let me get back to you regarding this topic tomorrow. I'd like to revisit the topic myself (and the comments about this I made earlier).
@marcolab It sounds great that you already know how the changelog is handled in pytest.
My understanding is that pytest uses towncrier to assemble a changelog from individual news snippets. As a first step, it would be sufficient, if you could setup towncrier for pytest-asyncio, so that it can be run manually. Once this works properly, we can automate the process.