Finally figured it out, this was the issue that was preventing renovate
from grouping pulldown-cmark and pulldown-cmark-to-cmark together in a
single PR.
See code comment for a more detailed description of why this is needed.
66108b5128 didn't actually result in a
grouped update for pulldown-cmark and pulldown-cmark-to-cmark, both of
which have available updates and both of which must be upgraded at the
same time in this instance.
Reading the renovate documentation, it is unclear why this configuration
didn't work, but my best guess is that there's some unexpected behavior
when groupName == packageName.
1. Use [towncrier][1] to generate release notes/CHANGELOG instead of
auto-generating it from git commit messages.
2. Move release scripts into a Justfile.
3. Only regenerate the top-level README file when making a release,
don't force it to be up to date in between releases.
Point 3 helps prevent documentation for unreleased changes from being
shown to users on GitHub, which may otherwise be confusing.
[1]: https://towncrier.readthedocs.io/en/stable/index.html#